"> ">

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 8 Patrick Reuter

Présentations similaires


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

1 Conception de Site Webs Interactifs Cours 8 Patrick Reuter preuter@labri.fr

2 PHP et MySQL

3 http://fr2.php.net/manual/fr/

4 <?php echo "Hello World"; ?>

5 Remarques Extension du fichier doit être.php Le navigateur ne comprend que l'HTML Le code "php" inclus dans la page HTML est transformé par le serveur php Le code "php" est invisible dans la page HTML affichée car il est interpreté

6 Un exemple pratique : Hello World Ma premiere page Hello World Ma premiere page <?php echo "Hello World"; ?> helloworld.htm helloworld.php

7 Un exemple pratique : remarques Si on "éteint" le serveur web (EasyPHP) Si on met une extension.html au fichier php

8 echo 'j\'utilise php'; // FAUX echo "j'utilise php" ; // CORRECT echo "j\'utilise php" ; // CORRECT

9 Concatenation 1 <? echo "Salut"." Martin"; ?>

10 Interaction de PHP avec MySQL <?php require_once("connect_db.php"); ?>

11 ou bien

12 PHP : $_GET et $_POST $_GET –Les paramètres apparaissent dans lURL –Ils sont donc visibles par lutilisateur –Bien pour trouver des erreurs –Ils peuvent donc être récupéré … –MAIS : Ils sont facilement modifiables (bien pour le développement pour trouver des bugs, p.ex.) –MAIS : nombre de caractères limités dans lURL (256 caractères)

13 PHP : $_GET et $_POST $_POST –Les paramètres napparaissent pas dans lURL Ils sont quand meme visibles en affichant le source de la page –La quantité dinformations dans les formulaires est quasiment illimité –MAIS : Ils ne sont facilement modifiables

14 MySQL – Insérer un enregistrement Concatenation de chaines de caractères $chaine = "Bon". "jour";

15 MySQL – Insérer un enregistrement Concatenation de chaines de caractères $j = "jour"; $chaine = "Bon". $j;

16 MySQL – Insérer un enregistrement Concatenation de chaines de caractères $chaine = "Bonjour ". $_GET[nom];

17 MySQL – Insérer un enregistrement Concatenation avec les données du formulaire $login = $_POST['login']; $mdp = $_POST['mdp']; $sql = "INSERT INTO `users` (`pseudo`, `motdepasse`) VALUES ('". $login. "', '". $mdp. "' ); "; $res = qdb($sql); // qdb est défini dans connect_db.php

18 MySQL – Insérer un enregistrement Concatenation avec les données du formulaire $login = $_POST['login']; $mdp = $_POST['mdp']; $sql = "INSERT INTO `users` (`pseudo`, `motdepasse`) VALUES ('', '' ); "; $res = qdb($sql); // qdb est défini dans connect_db.php

19 MySQL – Insérer un enregistrement Concatenation avec les données du formulaire Exemple : $login = "preuter"; $mdp = "l'); DELETE * FROM users;"; $sql = "INSERT INTO `users` (`pseudo`, `motdepasse`) VALUES ('preuter', 'l'); DELETE * FROM users;"; $res = qdb($sql); // qdb est défini dans connect_db.php

20 Instructions MySQL Protéger vos champs textes : $mdp = "l'arbre"; $mdp = mysql_escape_string($mdp); echo $mdp; // l\'arbre

21 MySQL – Insérer un enregistrement Concatenation avec les données du formulaire $login = mysql_escape_string($_POST['login']); $mdp = mysql_escape_string($_POST['mdp']); $sql = "INSERT INTO `users` (`pseudo`, `motdepasse` ) VALUES ('". $login. "', '". $mdp. "' ); "; $res = qdb($sql); // qdb est défini dans connect_db.php

22 $a = stripslashes("l\'arbre"); (resultat : l'arbre)

23 Récapitulatif HTML/XHTML CSS PHP MySQL

24 Mini-projets 1.Site de rencontre –(utilisateurs, rechercher un correspondant) 2.Messagerie privée –(éventuellement à combiner avec 1.) 3.Gestion dune équipe de sport 4.Forum de discussion 5.Gestion de salles de cours 6.Site de vente aux enchères 7.Albums de photos 8.Carnet dadresses et liste de mailings 9.Gestionnaire de DVD 10.Jeux de bourse

25 Jeu à jardin de plantes Actualisation web Mailing list Reminder web de evenement Creation statistiques Gestionnaire division sportive Planning

26 Transférer des fichiers vers votre hebergeur FTP (File transfer protocol) Client FTP : Filezilla, FTP Expert, SmartFTP, … _______ ftp.numericable.fr ftp.membres.lycos.fr ftp.wanadoo.fr Nom d'utilisateur ----------------- preuter Mot de passe -----------------

27

28 Terminologie Base de données (database) Table (table) Enregistrement (record) Champ (field)

29 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)

30 Table VILLE VILLE VilleIDnompopulationsuperficieregion 1Paris123456 12 2Lyon12345 22 3Grenoble1234 22 note : ici region est une clé étrangère (table REGION)

31 Relation 1 : n

32 Types de relations Relation de type 1:1 Relation de type 1:n Relation de type n:m

33 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

34 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

35 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.

36 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 8 Patrick Reuter"

Présentations similaires


Annonces Google