PHP SQLite et PDO

Formation PHP SQLite et PDO, tutoriel & guide de travaux pratiques en pdf.

SQLite et PDO

SQLite ecrit les données relatives a la base dans un unique fichier sur le disque dur du serveur. La commande sqlite3 permet d’ouvrir la base et effectuer des requetes SQL (pratique pour debugger).
PDO (PHP Data Objects) est une interface pour acceder a une base de donnees depuis PHP. Elle gere la connexion, l’envoie des requetes, la d´econnexion a la base de donnees. Elle permet de changer plus facilement de moteur de bases de donnees (Par exemple, SQLite → MySQL). Ouverture de la base :
<? try { $bd = new PDO( ”s q l i t e : database . s q l i t e ”); } catch (PDOException $e) { die ( ’ Erreur : ’ . $e−>getMessage ( ) ) ; } ?>
Bertrand Estellon (AMU) PHP 13 mars 2012 154 / 214
Base de donn´ees Les requˆetes et fonctions utiles
Une fois l’instance de PDO construite, vous effectuez des requˆetes avec : I $bd->exec($requete) : pour modifier la base de donn´ees I $bd->query($requete) : pour extraire des donn´ees de la base
Exemples : $bd−>exec ( ”CREATE TABLE users ( ”. ” nickname char (20) , ”. ” password char (50) ”. ”); ”);
$res =$bd−>exec ( ’UPDATE users SET password=”’ . md5( $password ). ’ ” WHERE nickname=”’ . $nickname . ’ ”; ’ ); echo ”nombre de lignes modifiees = $res ”;
$res = $bd−>query ( ”select nickname from users ; ”);
Bertrand Estellon (AMU) PHP 13 mars 2012 155 / 214
Base de donn´ees Les requˆetes et fonctions utiles

Injections SQL

Le code suivant :
$nickname = ’ aa ”; DELETE FROM users ; ’ . ’SELECT ∗ FROM users WHERE nickname=”’ ;$password = ”truc ”; $res = $bd−>exec ( ’UPDATE users SET password=”’ . md5( $password ). ’ ” WHERE nickname=”’ . $nickname . ’ ”; ’ );
ex´ecute la requˆete SQL suivante :
UPDATE users SET password=” . . . . ” WHERE nickname=”aa ”; DELETE FROM users ; SELECT ∗ FROM users WHERE nickname=””; Protection contre les injections SQL : $r = $bd−>prepare ( ’UPDATE users SET password = ? ’ . ’WHERE nickname = ? ’ ); $r−>execute ( array (md5( $password ) , $nickname ));
Bertrand Estellon (AMU) PHP 13 mars 2012 156 / 214
Base de donn´ees Les requˆetes et fonctions utiles
Pour faire une requˆete SQL : $res = $bd−>query ( ”select ∗ from sondages ”); var dump ( $res ); affiche ’object(PDOStatement)#2 (1) { [”queryString”]=> string(19) ”select * from sondages”}’ Pour connaˆıtre le nombre de lignes : echo ”nombre de lignes : ”. $res−>rowCount () . ”\n”; Pour parcourir les lignes : $res = $bd−>query ( ”select ∗ from sondages ”); while ( $ligne = $res−>fetch () ) { echo $ligne [ ’ createur ’ ] . ” pose la question : ”. $ligne [ ’ question ’ ] . ”\n”; }
Bertrand Estellon (AMU).

Cours gratuitTélécharger le cours complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *