Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parBénézet Garnier Modifié depuis plus de 11 années
1
Conception de Site Webs Interactifs Cours 10 Patrick Reuter preuter@labri.fr
2
Mini-projets
3
Transférer votre site vers votre hebergeur Transférerer les fichiers (index.php, …) Transférer la base de données Fichier de configuration –connect_db.php (version en local) –connect_db.php (version sur le serveur)
4
Transférer des fichiers vers votre hebergeur FTP (File transfer protocol) Client FTP : Filezilla, FTP Expert, SmartFTP, … Addresse FTP ftp.ifrance.com ftp.numericable.fr ftp.membres.lycos.fr ftp.wanadoo.fr Nom d'utilisateur preuter Mot de passe -----------------
5
Fichier connect_db.php <?php $dbhost="localhost"; $dbuser="root"; $dbpassword=""; $dbname="base_cswd"; $dblink=mysql_connect($dbhost,$dbuser,$dbpassword); $db_cswd=mysql_select_db($dbname,$dblink); function qdb($sql) { $resultat = mysql_query($sql); if (mysql_errno()) { echo "MySQL error ".mysql_errno()." : ".mysql_error()."\n "; echo "Requête MySQL : ".$sql."\n "; die; } return $resultat; } ?>
6
PHP et MySQL
7
$sql = "INSERT INTO livreor ( id, texte, nom, date ) VALUES ('', '".mysql_escape_string($_GET['nom'])."', '".$_GET['texte']."', NOW()); "; $resultat = qdb($sql); $resultat = mysql_query("INSERT INTO …");
8
Fichier connect_db.php <?php $dbhost="localhost"; $dbuser="root"; $dbpassword=""; $dbname="base_cswd"; $dblink=mysql_connect($dbhost,$dbuser,$dbpassword); $db_cswd=mysql_select_db($dbname,$dblink); function qdb($sql) { $resultat = mysql_query($sql); if (mysql_errno()) { echo "MySQL error ".mysql_errno()." : ".mysql_error()."\n "; echo "Requête MySQL : ".$sql."\n "; die; } return $resultat; } ?>
10
Parcourir les enregistrenents <?php $sql = "SELECT * FROM sondages;"; $resultat = qdb($sql); // connaitre le nombre d'enregistrements $nombre_resultats = mysql_num_rows($resultat); // parcourir le tableau des enregistrements while ($enregistrements = mysql_fetch_array($resultat)) { echo $enregistrements['id']; echo $enregistrements['question']; } ?>
11
Parcourir les enregistrenents <?php $sql = "SELECT * FROM personnes WHERE id =".$_GET['id']; $resultat = qdb($sql); // connaitre le nombre d'enregistrements $nombre_resultats = mysql_num_rows($resultat); // parcourir le tableau des enregistrements $i=1; while ($i <= $nombre_resultats) { $enregistrements = mysql_fetch_array($resultat) echo $enregistrements['id']; echo $enregistrements['nom']; $i = $i + 1; } ?>
14
Terminologie Base de données (database) Table (table) Enregistrement (record) Champ (field)
15
Table PERSONNE PERSONNE PersIDnomprénomdate_naissville_naiss 1Dupontbob01-01-19501 2yyyymeurise29-04-19992 3zzzzcodd26-12-20001 note : ici ville_naiss est une clé étrangère (Table VILLE)
16
Table VILLE VILLE VilleIDnompopulationsuperficieregion 1Paris123456 12 2Lyon12345 22 3Grenoble1234 22 note : ici region est une clé étrangère (table REGION)
17
Table personnes idnom 1Pascal 2Marie
18
Table animaux idnom…id_personne 1Zeus…1 2Sisko…1 3Peggy…1 4Oscar…2 5Felix…2
19
Types de relations Relation de type 1:1 Relation de type 1:n Relation de type n:m
20
Sondage idQuestionTextechoix1Reponsechoix1Textechoix2Reponsechoix2… 1Constitut ion europée nne ? Pour0Contre0 2Aimez vous le foot ? J'aime bienJ'aime moyen
21
Table sondages idquestion 1Aimez voue le foot ? 2Constitution européenne ?
22
Table réponses idreponsevotesid_sondage 1J'aime bien01 2J'aime moyen 01 3J'aime pas01 4Pour02 5Contre02
23
Table réponses idreponsevotesid_sondage 1J'aime bien01 2J'aime moyen 01 3J'aime pas01 4Pour02 5Contre02 clé étrangère
24
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
25
Instructions MySQL Sélectionner les champs de tous les enregistrements dune table SELECT * FROM `users` [WHERE condition [AND condition] [OR condition]] [ORDER BY champs [DESC][ASC]];
26
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
27
Instructions MySQL Effacer un enregistrement DELETE FROM nom_table WHERE nom_du_champs = valeur
28
Relation 1 : n
29
Relation de type 1:1 Une entité est partenaire de exactement une autre entité Exemples: Mariage : Une personne est marié avec exactement une autre personne Personne 1:1 Personne Immatriculation : Une véhicule à exactement une immatriculation Véhicule 1:1 Immatriculation Stade : Dans notre exemple, un club a exactement un stade Club 1:1 Stade
30
Relation de type 1:n Une entité d'un côté est en relation avec un ou plusieurs entités de l'autre côté. Exemples : Art : Un tableau se trouve (à un moment donné) dans un musée. Par contre, dans un musée il y a plusieurs tableaux. Musée 1:n Tableaux Famille: Un enfant à exactement une mère biologique. Mais une mère peut avoir plusieurs enfants. Mère 1:n Enfants
31
Relation n:m Dans les deux côtés de la relation il y a un nombre arbitraire d'entités. Attention : Ne pas écrire n:n ! (n m) Exemples : Etudiant Professeur: Un professeur enseigne plusieurs étudiants. Un étudiant va en cours de plusieurs professeurs. Professeur m:n Etudiant Immobilier : Un immobilier peut appartenir à plusieurs propriétaires. Un propriétaire peut posséder plusieurs immobiliers. Propriétaire n:m Immobilier joueurs clubs anciens : Un joueur peut avoir plusieurs clubs anciens. Un club a plusieurs joueurs.
32
Réalisation Relation 1:1 La clé primaire d'une entité est la clé étrangère d'une autre entité dans un champs supplémentaire. Relation 1:n La table de l'entité du côté n aura un champs supplémentaire qui a comme clé étrangère la clé primaire du côté 1. Relation n:m Création d'une table de jointure qui contient deux clés étrangères qui sont les clés primaires des deux tableaux. Les relations n:m seront toujours converties en deux relations, une relation 1:n, et une relation 1:m.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.