Conception de Site Webs Interactifs Cours 7 Patrick Reuter
PHP et MySQL
Instructions MySQL Sélectionner les champs de tous les enregistrements d’une table SELECT * FROM `users` [WHERE condition [AND condition] [OR condition]] [ORDER BY champs [DESC][ASC]];
Instructions MySQL INSERT INTO `users` ( `id`, `pseudo`, `motdepasse` ) VALUES ('1', 'nathan', '0000‘ ); si le champs id est mis en auto-increment, il suffit de mettre INSERT INTO `users` (`pseudo`, `motdepasse`) VALUES ('nathan', '0000‘ ); et la valeur de id est mise à jour automatiquement
Instructions MySQL Modifier une donnée dans une table UPDATE nom_table SET nom_du_champs = nouvelle_valeur WHERE nom_du_champs = valeur Exemple UPDATE sondage SET nombrechoix1 = 0 WHERE id = 1
Instructions MySQL Effacer un enregistrement DELETE FROM nom_table WHERE nom_du_champs = valeur
Interaction PHP avec MySQL
Instructions MySQL Ouvrir une connexion à un serveur MySQL $dblink=mysql_connect($dbhost,$d buser,$dbpassword);
Interaction PHP avec MySQL Sélectionner une base de données MySQL $db_cours6=mysql_select_db($dbna me,$dblink);
Interaction PHP avec MySQL Exécuter une requete : $resultat = mysql_query($sql);
Interaction PHP avec MySQL Récupérer l'erreur : $resultat = mysql_query($sql); if (mysql_errno()) { echo "MySQL error ".mysql_errno()." : ".mysql_error()."\n "; echo "Requête MySQL : ".$sql."\n "; die; }
Terminologie Base de données (database) Table (table) Enregistrement (record) Champ (field)
Table PERSONNE PERSONNE PersIDnomprénomdate_naissville_naiss 1Dupontbob yyyymeurise zzzzcodd note : ici ville_naiss est une clé étrangère (Table VILLE)
Table VILLE VILLE VilleIDnompopulationsuperficieregion 1Paris Lyon Grenoble note : ici region est une clé étrangère (table REGION)
MySQL – Insérer un enregistrement Concatenation de chaines de caractères $chaine = "Bon". "jour";
MySQL – Insérer un enregistrement Concatenation de chaines de caractères $j = "jour"; $chaine = "Bon". $j;
MySQL – Insérer un enregistrement Concatenation de chaines de caractères $chaine = "Bonjour ". $_POST[‘nom’];
MySQL – Insérer un enregistrement Concatenation avec les données du formulaire $sql_query = "INSERT INTO `users` (`pseudo`, `motdepasse` ) VALUES ('nathan', '0000‘ ); ";
MySQL – Insérer un enregistrement Concatenation avec les données du formulaire $sql_query = "INSERT INTO `users` (`pseudo`, `motdepasse` ) VALUES (‘ ". $_POST[‘login’]. " ’, ". $_POST[‘login’]. "‘ ); ";
Sélectionner les champs de tous les enregistrements d’une table SELECT * FROM `users` ;
Sélectionner les champs des enregistrements précis d’une table SELECT * FROM `users` WHERE pseudo = ‘Nathan’
Inclure un fichier PHP include require require()require() et include() sont identiques, sauf dans leur façon de gérer les erreurs. include() produite une Alerte (warning) tandis que require() génère une erreur fatale.include() Alerte (warning)require()erreur fatale
Inclure un fichier PHP include_once require_once La principale différence par rapport à include/require est qu'avec require_once(), et include_once() vous êtes assurés que ce code ne sera ajouté qu'une seule fois,require_once() include_once() - ce qui évite les redéfinitions de variables ou de fonctions, génératrices d'alertes.
Interaction de PHP avec MySQL <?php echo "Hello PHP ! "; ?> <?php // Début de l'initialisation $dbhost="localhost"; $dbuser="root"; $dbpassword=""; $dbname="base_cours6"; // se connecter à mysql $dblink=mysql_connect($dbhost,$dbuser,$dbpassword); // sélectionner la base de données $db_cours6=mysql_select_db($dbname,$dblink); ?>
Interaction de PHP avec MySQL <? // exécuter une requete MySQL $sql_query = "SELECT * FROM users;"; $resultat = mysql_query($sql_query,$dblink); // connaitre le nombre d'enregistrements $nombre_resultats = mysql_num_rows($resultat); // parcourir le tableau des enregistrements while ($enregistrements = mysql_fetch_array($resultat)) { echo $enregistrements['pseudo']; echo $enregistrements['motdepasse']; }; ?> Nombre de résultats :
Fichier bdd.php // // Début de l'initialisation // $dbhost="localhost"; $dbuser="root"; $dbpassword=""; $dbname="base_cours6"; // se connecter à mysql $dblink=mysql_connect($dbhost,$dbuser,$dbpassword); // sélectionner la base de données $db_cours6=mysql_select_db($dbname,$dblink); // // Fin de l'initialisation //
Interaction de PHP avec MySQL <?php require_once("db.php"); ?>
Fonctions PHP function is ($ ) { // regx to test for valid adres $regex = '^[_a-z0-9-]+(\.[_a-z0-9- if (eregi($regex, $ )) return true; else return false; } … $ = if (is ($ )) { echo ‘ correct’; } else { echo ‘ pas correct’; }
Expressions régulières