La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Conception de Site Webs Interactifs Cours 10 Patrick Reuter

Présentations similaires


Présentation au sujet: "Conception de Site Webs Interactifs Cours 10 Patrick Reuter"— Transcription de la présentation:

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; } ?>

9

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; } ?>

12

13

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.


Télécharger ppt "Conception de Site Webs Interactifs Cours 10 Patrick Reuter"

Présentations similaires


Annonces Google