Mettre en place un site web dynamique Mise en application

Dimension: px
Commencer à balayer dès la page:

Download "Mettre en place un site web dynamique Mise en application"

Transcription

1 Sites web dynamiques avec PHP et Mysql Mettre en place un site web dynamique Mise en application Annie Danzart 1

2 Sites web dynamiques avec PHP et Mysql Organisation du cours (7 séances sur 5 semaines) Objectif du module: un site de cartes de vœux numériques dynamiques Côté numérique: mettre en place un site web Côté dynamique: construire une carte en ligne avec le langage php Côté persistance: stocker les informations dans une base de données Mysql Annie Danzart, a.danzart@gmail.com

3 Mise en place du site: côté technique Création de votre espace personnel: le home directory, votre login: login le dossier public_html le fichier index.html organisation des fichiers les droits d accès aux fichiers la page de vitrine: vous êtes libres d y placer les informations que vous voulez, sous la forme qui vous convient. Intégrez des images, des liens externes Serveur de fichiers perso.telecom-paristech.fr ~login ~login/public_html/index.html - public_html - Fichiers - Dossiers - Etc. - images - index.html - vitrine.html 3

4 La vitrine du site vitrine.html formulaire.php formulaire.php 4

5 Affichage sans serveur: Comment ça marche? file:///perso.telecom-paristech.fr/~login/vitrine.html Poste client chrome Javascript 3 Le navigateur est capable d afficher des pages html locales 1 2 Serveur de fichiers perso.telecom-paristech.fr perso.enst.fr Il est capable d interpréter des scripts javascript ~login/public_html/vitrine.html 5

6 Utilisation d un serveur: Comment ça marche? Poste client chrome Serveur Apache httpd Serveur de fichiers 2 3 perso.telecom-paristech.fr Le serveur reçoit la requête et la traite en envoyant au client la page demandée ~login/public_html/vitrine.html 6

7 Schéma de fonctionnement du système de création formulaire.php validation.php execution.php validation.php execution.php Insertion dans la base de données Envoi d un modification. carte.php 7

8 Schéma de principe du système formulaire.php validation.php execution.php (inclut connexion_inc.php) <form > validation.php <form > execution.php insert into </form> carte.php Modification </form> mail recapitulatif.php select * from cartes where C_ID=3 ; select * from cartes ; Mail : 8

9 Les fichiers qui constituent le système vitrine.html: page d accueil du site. Écrite en html. Elle permet d accéder au site de cartes de vœux. Elle peut permettre d autres actions. formulaire.php: formulaire dynamique (en php) qui propose à l utilisateur de faire son choix. Il sera ensuite capable de prendre en compte des données précédemment saisies pour effectuer une modification. validation.php: page php qui récupère et restitue les choix de l utilisateur. execution.php: page php qui stocke les caractéristiques de la carte dans la base de données et envoie un d annonce à son destinataire. Elle indique à l utilisateur qui tout s est bien passé. carte.php: page php qui affiche la carte de vœux constituée. recapitulatif.php: page php qui permet de visualiser la liste des cartes qui ont été envoyées. 9

10 Le formulaire de choix de carte formulaire.php validation.php validation.php Partie statique: nom, mail, message, thèmes Partie dynamique: mes images puisées dans un répertoire Hautement dynamique: on affiche les choix de l utilisateur pour que celui-ci vérifie qu ils lui conviennent 10

11 Créer un formulaire dynamique Comment créer un formulaire? formulaire.php Partie dynamique: des images puisées dans un répertoire Partie statique: nom, mail, message, thèmes, validation 11

12 Première étape: créer la partie statique Comment créer un formulaire statique? L attribut action du formulaire contient le nom du fichier qui s exécutera à la validation, soit validation.php noms, mails, message: champs de type input Thème: menu déroulant Validation: champ de type submit formulaire.php 12

13 Deuxième étape: valider la partie statique Comment créer un formulaire statique? Les informations transmises par le formulaire sont affichées pour confirmation. Ce mécanisme vient de l exécution d un script php capable de les récupérer et de les utiliser pour générer du source html dynamique qui les inclut. validation.php 13

14 Deuxième étape: valider la partie statique Il faut récupérer les données transmises par notre formulaire et les afficher sous une forme appropriée (html). Pour cela on utilise un script dont le but est de faire le travail. On peut ajouter une ligne qui affiche la date courante (fonction date() ). Elle sera également dans un script php. validation.php Nous sommes le 13/11/

15 Pages web dynamiques avec PHP et Mysql Ecrire un script PHP Annie Danzart

16 Historique de PHP 1994 : Rasmus Lerdorf, Personnal Home Pages Pre Hypertext Processor Langage de scripting traité par le serveur, orienté web Module mod_php d'apache Gratuit, libre de droits (license GNU GPL) Nombreuses extensions (sgbd, ldap, gif, pdf, smtp, ) Syntaxe proche de celle de C, Java, Perl Comparable à ASP, asp2php Extensible Des milliers de sites de par le monde Versions 3, 4, 5, 6? 16

17 Différentes versions de PHP? php3: Première version stable, répond à la majorité des besoins des sites dynamiques php4: Introduction de la notion d objet et de sessions php5: SQLite: Un SGBD embarqué SimpleXML: Un nouveau parseur XML très efficace et très simple un nouveau modèle POO: Le modèle objet complètement remanié, l'ancien restant correctement interprété par php php6 (développement suspendu): Support d'unicode, Amélioration de la Programmation Orienté Objet, Amélioration et sécurisation des fonctionnalités php et les CMS: 17

18 Les pages php Une page php = page html contenant des scripts, extension spécifique du fichier Page php ü Une page html ü Des scripts php. ü L ensemble des scripts d une page utilise le même contexte ü Chaque script peut générer du code html qui s intègre à sa place dans la page html où il se trouve ü L extension de la page doit être php, ou php3, phtml, php4, php5 sinon le serveur ne sait pas qu il doit interpréter des scripts 18

19 Les scripts php Formulation des scripts php, identification <?php?> <??> <script language="php"> </script> <%php %> <?=$nom?> Ecriture la plus standard (recommandée) Encore très utilisée. A la Javascript Compatible avec ASP Ecriture raccourcie, pas toujours correctement interprétée 19

20 Php: définir des scripts Environnement d un script, résultat d exécution: premier exemple <html> <head><title>bienvenue</title> </head> <body> <?php // commentaire?> $nom="martin"; <h1 align="center"> Bonjour <?php echo $nom;?> </h1><br> Il est <?php echo date("h:i");?> <br> </body> </html> Exemple : php/exemples/scripts_test.php Remarque : la fonction date : phpplus.php#dates 20

21 Interprétation d un script php : Comment ça marche? Poste client chrome Serveur Apache httpd mod_php5 Serveur de fichiers perso.telecom-paristech.fr 2 3 Le serveur passe le fichier au module php avant de le retourner au client ~danzart/public_html/validation.php 21

22 Les scripts, les variables Les variables: les identificateurs, les types ü Types de base: entiers, réels, chaînes de caractères ü Tableaux, tableaux associatifs ü Objets ü Les noms de variables commencent par le caractère $ ü php est sensible à la casse ($i et $I sont deux variables différentes) ü Un nom peut commencer par une lettre ou un _ ü Il peut comporter des caractères, des chiffres et _ ü Les variables ne sont pas typées, n ont pas besoin d être déclarées ü Elles ont une valeur par défaut qui dépend du contexte d utilisation 22

23 Php: Les scripts, les variables Variables, types de variables <html> <head><title>bienvenue</title> </head> <body> <?php // definition d une variable $a=10; echo "<font color=\"red\">"; echo "Hello C est $a"; $a=$a+10;?> </font></body> </html> Remarque: - une variable peut changer de valeur en cours de script 23

24 Les scripts, les variables Les Constantes <html> <head><title>bienvenue</title> </head> <body> <?php // définition d une constante define("salut","bonjour a tous<br />"); echo "<font color=\"red\">"; echo "Hello ".Salut;?> </font></body> </html> Exemple: ~danzart/php/exemples/ commentaires_test.php Remarques: - l opérateur. de concaténation - insertion de balises html - échappement de caractères 24

25 Les variables en php Affectation d une valeur à une variable, quelques opérations $chaine = "Poire"; // chaîne de caractères $nombre = 0; $nombre++; // nombre 1 (entier) $nombre+=1; // entier (2) $nombre = $nombre + 1.3; // réel (3.3) Simple et double quote Chaîne dynamique $val = 'Rusti'; echo "Hello $val"; // Hello Rusti echo 'Hello $val'; // Hello $val Exemple: php/exemples/variables_test.php 25

26 Les variables en php Les variables: opérateurs arithmétiques, opérateurs logiques Principaux opérateurs arithmétiques : +, -, *, /, %, ++, --, +=, ==, Arithmétiques $a + $b - $c $a * $b / $c $a % $b $a++ Incrément de 1 $b-- Décrément de 1 Assignation de valeur =, +=, -=, *=, /=, %=,.= Comparaison entre expressions ==, =, <, >, <=, >= Concaténation $chaine="votre nom est ".$val; Opérateurs Logiques not,, &&,, AND, XOR, OR rque : précédence de or sur $a = foo() bar() or die(); Binaires bitwise &,, ^, ~, >>, <<, - : contrôle d'erreur? : opérateur ternaire 26

27 Les tableaux Manipulation de tableaux, tableaux dynamiques // on donne l indice $fruits[0]= "pomme"; $fruits[1]= "banane"; //un indice par défaut $fruits[] = "orange"; // équivaut a $fruits[2]= "orange" //initialisation en bloc $fruits= array(3=> "pomme", 1=>"banane",4=> "orange" ); //initialisation en bloc //avec des indices par defaut $fruits= array( "pomme", "banane", "orange" ); A priori, les indices commencent à 0. Pas besoin de déclarer la dimension ni le type des valeurs. Si on ne donne pas d indice, l indice pris en compte sera celui qui suit la valeur la plus haute (0 si rien n a encore été mis). L initialisation peut se faire «en bloc», en précisant ou non les indices. Les tableaux dynamiques sont très utiles lors de l utilisation de champs de type «checkbox» dans un formulaire. Exemple : exemples/tableaux_test.php 27

28 Les tableaux Les tableaux: fonctions associées, Traitement du tableau dans sa globalité sizeof($t) = count($t) is_array($t) reset($t) end($t) current($t) Positionnement dans un tableau : next($t) prev($t) représenté par une liste de doublets (indice,valeur) sort, rsort, ksort, krsort, usort shuffle($t) max($t) min($t) arraywalk($t,"nomfonction") Taille d un tableau Est-ce un tableau? Tri ascendant, descendant sur la valeur, sur la clé, avec une fonction utilisateur Mélange aléatoire Calcul des valeurs extrêmes Applique une fonction à toutes les valeurs d un tableau 28

29 Les tableaux Parcours d un tableau $t = array("i","n","f","3","4","7"); sort($t); // instruction de boucle sur les // éléments de tableau for ($i=0;$i<count($t);$i++) echo "t[$i]=".$t[$i]."\n"; sort($t); reset($t); // autre instruction de boucle while(list($cle,$valeur)= each($t)) echo "t[$cle]=".$t[$cle]."\n"; L ajout de "\n" dans l affichage introduit un saut à la ligne dans le source. $a = each($t) renvoie l'index et la valeur courante dans un tableau à 2 éléments; $a[0] contient l'index, $a[1] la valeur. list($cle, $valeur,... ) construit un tableau temporaire à partir des variables scalaires passées en argument. Exemple: php/exemples/tableaux_fonctions_test.php 29

30 Les tableaux Les Tableaux associatifs: Les indices ne sont pas forcément numériques $mois["janvier"]= 1; $mois["février"]= 2; $mois[] = array("janvier"=>1,"février"=>2, "Mars"=>3); while (list($cle,$val) = each($mois)) echo "<br> No de $cle : $val "; foreach ($mois as $cle => $val) echo "<br> No de $cle : $val "; key($t):index de l'élément courant du tableau uasort($t,"f_comp"): tri à l aide d une fonction en gardant les indices associés Les indices du tableau sont alors des chaînes de caractères qui pourront être traitées en tant que telles. L emploi de la fonction each s avère importante pour parcourir les tableaux associatifs. On peut aussi utiliser la boucle foreach. Exemple: php/exemples/ tableaux_associatifs_test.php 30

31 Un formulaire: comment le gérer en php Déclaration, balises, méthode <form method="post" action="execution.php"> <H2>Questionnaire</H2> Prénom? <input name="prenom" value="xxx"><p> Votre nom? <input name="nom" value="yyy"><p> Votre couleur favorite? <select name="couleur"> <option selected value="white">blanc <option value="yellow">jaune <option value="green">vert </select><p> Cliquez sur <input type="submit" value="valider"> pour valider. </form> La balise form délimite le formulaire Son attribut method détermine le mode de transmission des paramètres L attribut action précise le programme qui s exécute lors de la validation Balises: form, input (type, name, value), select (name), option (value), Les balises d'un formulaire Exemple: formulaire_test.html 31

32 Un formulaire: comment le gérer en php Formulaires: Récupération des valeurs transmises On écrit un script php dans le fichier d exécution execution.php A chaque paramètre du formulaire transmis est associée dans ce script une variable php qui contient la valeur choisie par l utilisateur. En fait ces variables sont des éléments d un tableau associatif dont le nom dépend de la méthode de transmission choisie: Méthode post => tableau $_POST Méthode get => tableau $_GET Pour le paramètre prenom, la valeur transmise est $_POST["prenom"] Il en est de même pour les paramètres nom, couleur, et même le bouton de soumission si on lui donne un nom. Il peut être pratique de définir localement des variables qui auront le même nom que les paramètres: $prenom = $_POST["prenom"]; $nom = $_POST["nom"]; Puis on peut afficher leur valeur: echo $prenom; Exemple: formulaire_test.html 32

33 Php: Les formulaires, le type image Cas particulier du type image <H1>Formulaire2 </H1> <form method="post" action="execution.php"> <H2>Questionnaire</H2> Votre prénom? <input name="prenom" value="xxx"><p> Cliquez sur <input type="image" name="im1" src="images/bouton.gif"> pour valider. </form> L image remplace le bouton de soumission du formulaire. Les coordonnées du point où l'utilisateur aura cliqué seront : $im1_x et $im1_y Exemple : ~danzart/php/exemples/images_test.php 33

34 Php: Les formulaires, les checkbox Les checkbox: paramètres html, récupération des données sous forme de tableau <form method="post" action="execution3.php3"> <H2>Questionnaire : votre choix</h2> <input type="checkbox" name="fruits[]" value="pomme"> Pommes <input type="checkbox" name="fruits[]" value="poire"> Poires Cliquez sur <input type="submit" value="valider"> pour valider. </form> Le nom du champ de type checkbox prévoit que les valeurs choisies seront stockées dans un tableau dynamique. Seules les valeurs choisies seront transmises sous le nom fruits[] L appel de la fonction php count($fruits) permettra de savoir combien de valeurs sont dans le tableau. Exemple : exemples/checkbox_test.php Source du script 34

35 Votre formulaire de choix de carte formulaire.php validation.php validation.php Partie statique: nom, mail, message, thèmes Hautement dynamique: on affiche les choix de l utilisateur pour que celui-ci vérifie qu ils lui conviennent 35

36 Partie dynamique du formulaire Comment créer un formulaire? formulaire.php Partie dynamique: des images puisées dans un répertoire Ce sont ces images qui serviront dynamiquement à la création des boutons radio de choix d image 36

37 Première étape: préparer le dossier d images Dans votre espace personnel: placez les images de votre choix dans un sous-dossier images assurez-vous que leurs noms respectent les règles suivantes: - noms courts sans espace ni accent - attention aux majuscules/minuscules - donnez les bons droits au dossier d images (755: lecture et exécution pour tous) - donnez les bons droits aux images (644: lecture pour tous) Il faut ensuite modifier votre formulaire pour y intégrer ces images. Serveur de fichiers perso.telecom-paristech.fr ~login - public_html - Fichiers - Dossiers - Etc. - images - index.html - vitrine.html ~login/public_html/index.html 37

38 Php: Les fichiers, les répertoires Un script qui permet de lire le contenu d un dossier /* affichage des entrées d'un répertoire */ $repertoire="images"; $d = dir($repertoire); echo "chemin : $d->path<br>"; while ($entry = $d->read()) echo "$entry<br\n"; $d->close(); Ou $d = opendir($repertoire); while ($entry = readdir($d)) echo "$entry<br\n"; $close($d); On peut utiliser la liste de ces entrées pour créer des liens vers ces fichiers ou répertoires echo "<a href=\"$repertoire/ $entry\">$entry</a><br>\n"; On peut aussi utiliser ces entrées pour afficher des images echo "<img src=\"$repertoire/ $entry\» />$entry<br>\n"; Exemple : exemples/rep_test.php 38

39 Php: Les instructions de boucle Les boucles finies (for), les boucles conditionnelles (while, do while) <?php $n=28; for ($I=1;$I<$n;$I++) { } print("$i,<br>"); for ($I=1;$I<$n;$I++): print("$i,<br>"); endfor;?> <?php $n=28; while ($I<$n) { } print("$i,<br>"); $I=$I+1; while ($I<$n) : print("$i,<br>"); $I=$I+1; endwhile;?> <?php $n=28; do { } print("$i,<br>"); $I=$I+1; while ($I<$n);?> 39

40 Php: Les instructions de boucle, les conditions Comment construire une condition: les opérateurs Opérateurs: de comparaison entre expressions : ==, =, <, >, <=, >= Logiques : not,, &&,, AND, XOR, OR Valeurs logiques par défaut: Entier 0 è false 0 è true Réel 0.0 è false 0.0 è true Chaîne de caractères "" è false "" è true Tableau ou objet Null è false Null è true 40

41 Php: Les instructions de boucle Les instructions de boucle pour tableaux associatifs <?php foreach ($tab as $val) { }?> echo "valeur : $val<br/>\n"; <?php est équivalent à : reset($tab); while (list(,$val)=each($tab)) { }?> echo "valeur : $val<br/>\n"; <?php foreach ($tab as $cle => $val) {// bloc d instructions } echo "clé : $cle<br/>\n"; echo "valeur : $val<br/>\n";?> est équivalent à : <?php reset($tab); while (list($cle,$val)=each($tab)) {// bloc d instructions?> echo "clé : $cle<br/>\n"; echo "valeur : $val<br/>\n";} 41

42 Php: Les instructions conditionnelles Instructions conditionnelles: if, switch // notion de bloc {} if ($a > $b) { echo "a supérieur à b"; } elseif ($a == $b) { echo "a égal à b"; } else { } echo "a inférieur à b"; if ($a > $b): echo "a supérieur à b"; elseif ($a == $b) : else : endif echo "a égal à b"; echo "a inférieur à b"; $jour=date("l"); $mois=date("f"); switch ($mois) { case "January" : ;break; case "February": ;break;.... case "November": ;break; case "December": ;break;} printf(date(" Y ")); switch ($mois) case "January" : ;break;.... case "December": ;break; endswitch 42

43 Le formulaire: parcourir le dossier d images Parcours simple du dossier pour affichage des images // ouverture du repertoire de nom "images» $pointeur=opendir('images'); // boucle qui parcourt le dossier while ($entree = readdir($pointeur)) { // on peut choisir les fichiers a afficher if (($entree = ".") && ($entree = "..")) echo "<img src=\"$repertoire/$entree\" width='25'>"; } // fermeture du repertoire repere par $pointeur closedir($pointeur); 43

44 Le formulaire: parcourir le dossier d images Ajout des boutons de radio Un exemple // ouverture du repertoire de nom "images» $pointeur=opendir('images'); // boucle qui parcourt le dossier while ($entree = readdir($pointeur)) { // on peut choisir les fichiers a afficher if (($entree = ".") && ($entree = "..")) { echo "<img src=\"$repertoire/$entree\" width='25'>"; echo "<input type=\"radio\" value=\"$entree\">"; } } // fermeture du repertoire repere par $pointeur closedir($pointeur); 44

45 Le formulaire: parcourir le dossier d images On n affiche que 4 images par ligne // ouverture du repertoire... $n=0; // on initialise un compteur // boucle qui parcourt le dossier while ($entree = readdir($pointeur)) { // on peut choisir les fichiers a afficher if (($entree = ".") && ($entree = "..")) { $n = $n + 1; // on compte une image de plus if ($n == 5) // la ligne courante est pleine { echo "<br />"; // on passe a la ligne $n = 1; // on reinitialise le compteur a 1 (1 image) } echo "<img src=\"$repertoire/$entree\" width=\"25\">"; echo "<input type=\"radio\" value=\"$entree\" name=\"image\">"; } } // fermeture du repertoire repere par $pointeur... 45

46 Le formulaire de choix de carte modifié formulaire.php validation.php validation.php Maintenant le formulaire est dynamique, il contient autant d images que dans le dossier «images» Le fichier validation prend en compte cette donnée et affichera l image choisie par l utilisateur. Le nom du fichier est dans $image. 46

47 Validation du formulaire: le contrôle validation.php carte.php carte.php La page de validation contient un bouton de contrôle qui envoie l affichage de la carte ainsi générée. La carte est composée dynamiquement à partir des informations envoyées par l utilisateur. 47

48 Validation du formulaire: le bouton de contrôle Le mécanisme de contrôle visuel de la carte ainsi définie Le bouton de contrôle est en fait un formulaire dynamique contenant tous les champs transmis comme données input envoyés en champs cachés (hidden) validation.php <form action="carte.php" method="get"> <input type="hidden" name="nom" value="<?php echo $nom;?>">... <input type="submit" value="contrôler"> </form> 48

49 Validation du formulaire: la carte Constitution de la carte de voeux carte.php La carte de vœux fonctionne exactement comme la validation du formulaire. Seule la présentation des informations change (plus ergonomique) et elle ne présente pas les boutons de confirmation, contrôle ou modification. 49

50 Modifications des informations transmises validation.php formulaire.php formulaire.php La page de validation contient un bouton de contrôle qui renvoie l affichage du formulaire dynamique. Le formulaire dynamique prend en compte les valeurs des paramètres transmises pour les initialiser 50

51 Validation du formulaire: le bouton de modification Le mécanisme de modification des paramètres saisis par l utilisateur Le bouton de modification est, comme le bouton de contrôle, un formulaire dynamique contenant tous les champs transmis comme données input envoyés en champs cachés (hidden) validation.php <form action= "formulaire.php" method="get"> <input type="hidden" name="nom" value="<?php echo $nom;?>">... <input type="submit" value="modifier"> </form> 51

52 Retour sur le formulaire dynamique Initialiser les paramètres du formulaire avec les informations transmises 1) On récupère les valeurs transmises grâce au tableau $_GET ou $_POST selon la méthode utilisée. Par exemple: $nom=$_get["nom"]; 2) Pour chaque champ de type input, on ajoute un attribut value avec la valeur dynamique. Par exemple, pour le paramètre nom, on indique en plus: value="<?php echo $nom;?>" formulaire.php 3) Pour l image, il faut inclure un test dans la boucle d affichage. 4) La validation du formulaire ne change pas. 52

53 Le formulaire: initialiser l image choisie Pour chaque image du répertoire, on teste si c est le nom d image transmise ou non // ouverture du repertoire... $n=0; // on initialise un compteur // boucle qui parcourt le dossier while ($entree = readdir($pointeur)) { // on peut choisir les fichiers a afficher if (($entree = ".") && ($entree = "..")) { // gestion des images dans les lignes echo "<img src=\"$repertoire/$entree\" width=\"25\">"; if ($entree == $image) // c est l image transmise echo "<input type=\"radio\" checked value=\"$entree\" name=\"image\">"; else echo "<input type=\"radio\" value=\"$entree\" name=\"image\">"; } } // fermeture du repertoire repere par $pointeur... 53

54 Le formulaire: initialiser le thème choisi Dans les choix possibles du menu, on rajoute le choix de l utilisateur <select name="theme"> <option value="<?php echo $value;?>" selected ><?php echo $value;?></option> <option value="bon anniversaire">bon anniversaire</option> <option value="bravo ">Bravo </option> <option value="joyeuses fêtes">joyeuses fêtes</option> </select> 54

55 Confirmation du formulaire: le bouton de confirmation Le mécanisme de validation définitive de la carte ainsi définie Le bouton de confirmation est, comme le bouton de contrôle, un formulaire dynamique contenant tous les champs transmis comme données input envoyés en champs cachés (hidden) execution.php <form action= "execution.php" method="get"> <input type="hidden" name="nom" value="<?php echo $nom;?>">... <input type="submit" value="confirmation"> </form> 55

56 Confirmation du formulaire: le bouton de confirmation Le mécanisme de validation définitive de la carte ainsi définie execution.php A la confirmation du formulaire, le script php qui s exécute aura 3 fonctions importantes: 1) Enregistrer les caractéristiques de la carte dans une base de données. 2) Envoyer un au destinataire afin qu il puisse aller visualiser la carte qui a été conçue pour lui. Le contenu de ce message va dépendre de l endroit où les informations sont stockées dans la BDD. 3) Indiquer à l utilisateur que tout s est bien passé. C est la partie la plus simple puisqu elle consiste simplement à afficher dynamiquement une page de confirmation. 56

57 Pourquoi utiliser une base de données? Annie Danzart 57

58 Intérêt d une base de données Base de Données (Système de Gestion de Bases de Données): - ensemble de données géré par un programme informatique. - les données qui ont la même structure (nom; prénom, âge, adresse, profession) sont rangées dans un même tableau. - toutes les données d une même colonne sont du même type (texte, nombre entier, ). - un tel tableau est appelé une table En général, un SGBD est capable de gérer simultanément plusieurs bases de données. Dans une table, on trouve les enregistrements (lignes) qui constituent les informations stockées. Le nombre et la nature des colonnes (champs) constitue la structuration des informations. Nom Prénom Sexe Adresse Ville Code postal Danzart Annie F 23 rue des oiseaux Champs Trimouille Stéphane M 43 rue des Ormes Grenoble Choltesse Fabien M 33 place des Italiens Nancy

59 Intérêt d une base de données Une base de données est en principe stockée sur un réseau (internet) qui permet d y accéder de plusieurs différents avec bien souvent des interfaces différentes (client, gestionnaire, administrateur, système dédié, web, ). Base de données: données brutes Administrateur Système dédié Serveur: SGBD Visiteur 2 Navigateur web Gestionnaire Système dédié Visiteur 1 Navigateur web 59

60 Bases de données relationnelles Base de données relationnelle (SGBDR): - Structuration des données sous forme de tables - Définition précise (type, valeur par défaut) du modèle de données à l aide d un schéma conceptuel. - Le système est capable de gérer plusieurs bases de données, chaque base étant constituée de plusieurs tables. - Les tables seront reliées à l aide de relations. - Index unique qui permet au système d accélérer les opérations de recherche et de tri. - Utilisation de clés pour réaliser les relations entre tables afin de ne pas dupliquer inutilement les informations. - Ces clés sont à valeur unique pour assurer qu il n y aura pas de doublon dans les enregistrements. - Langage normalisé d interrogation SQL (Structured Query Langage). Exemple de schéma conceptuel 60

61 Bases de données relationnelles: exemple Tables Tables in magasin_test clients commandes produits Structure de la table clients: Field Type Null Key Default Extra C_ID int(11) PRI 0 auto_increment C_nom text YES NULL C_prenom text YES NULL C_numero int(11) YES NULL C_ text YES NULL Structure de la table commandes : Field Type Null Key Default Extra COMMANDE_ID int(11) PRI 0 auto_increment C_ID int(11) YES NULL P_ID int(11) YES NULL COMMANDE_nombre int(11) YES NULL COMMANDE_date text YES NULL

62 Mysql : un SGBD relationnel l Logiciel libre de droits (license GPL) actuellement version 5, MariaDB, toujours en évolution l l l l l Système de Gestion de Bases de Données Relationnelles: nombreuses fonctionnalités SGBDR Base de données mysql en tant que telle (bases gérées, utilisateurs autorisés) Langage de manipulation de bases de données (SQL) Comment ça marche? Architecture client-serveur Serveur mysqld, commande/programme mysql l Fonctions d'accès intégrées dans de nombreux langages 62

63 Une base de données importante: mysql user : table des utilisateurs référencés db : table des bases existantes host : table des droits d'accès par hôte host/user/password La table user: gère les autorisations d accès système droits utilisateur / administrateur dans mysql La table db: permet de gérer les droits d accès aux différentes bases (lecture, modification,..) host/db/user/select/insert/update/delete/alter/drop/create droits d'accès des utilisateurs pour chaque base La table host: précise quelles sont les machines qui permettent d accéder au système host/db/select/insert/update/delete/alter/drop/create droits d accès des hôtes pour chaque base dans mysql 63

64 Le langage mysql Langage de manipulation de bases de données ð Conforme au standard SQL (Structured Query Langage) show databases; create database carte_test; ; drop database autre_test; use carte_test; ; montrer la liste des bases présentes créer la base carte_test supprimer la base autre_test utiliser la base carte_test Création de la table cartes après avoir choisi la base carte_test create table cartes( C_ID int default '0' NOT NULL auto_increment, C_nom_dest text, C_nom_exp text, C_mail_dest text, C_mail_exp text, I_photo text, primary key (C_ID) ); Opérations sur les tables d une base (quelles tables?, structure d une table, modification, suppression) show tables ; show columns from cartes ; alter table cartes change C_dest C_destinataire text ; drop table cartes ; 64

65 Le langage mysql Langage de manipulation de bases de données insert into cartes (C_nom_dest, C_nom_exp, I_photo) values ("Toto","danzart","marguerites.jpg"); update cartes set C_nom_dest= "Moissinac" where C_ID=LAST_INSERT_ID(); select * from cartes order by C_ID desc; select * from cartes where C_nom_exp like %danzart'; delete from cartes where C_nom_dest like '%toto'; update cartes set C_nom_exp="Danzart" where C_nom_exp = %danzart'; 65

66 Architecture client - serveur 1) Client mysql : requêtes sql brutes pas toujours accessible 2) Client phpmyadmin : ( outil d'administration de mysql plus convivial écrit en php, accessible sur le web pas de contrôle de cohérence des données Simple exécution de commandes SQL 3) Clients personnalisés : adaptés à un besoin particulier chargés en plus d'assurer la cohérence grâce à php 66

67 Architecture client - serveur Client mysql de base fourni avec l'environnement > mysql -h mysql.tp.enst.fr -u user -p -h : hôte ( adresse IP ) -u : utilisateur ( accès spécifique ) -p : mot de passe ( défini au moment de la création de l utilisateur sera transmis après validation de la commande mysql ) Après validation de la commande, une session est ouverte qui permet de frapper directement des commandes mysql Autres outils faisant partie de la distribution : mysqldump, mysqladmin, mysqlimport 67

68 Architecture client - serveur Client phpmyadmin: interface web fournie avec l'environnement Quelques exercices de manipulation de la base de données carte - Création d une table avec une clé primaire, un champ de texte et un champ numérique - Insertion d enregistrements - Faire une requête conditionnelle - Faire des requêtes automatiques (boutons) et voir la requête sql exécutée 68

69 Comment ça marche? Poste client firefox Serveur Apache httpd mod_php5 Serveur de fichiers perso.telecom-paristech.fr Serveur Mysql mysql.infres.enst.fr mysqld bases ~danzart/public_html/exemple2.php 69

70 Clients personnalisés en php Fonctions php d accès à Mysql $connexion = mysql_pconnect("mysql.infres.enst.fr:3307", "user", "motdepasse"); Le login et le mot de passe sont exprimés "en clair" dans le script : -> les stocker dans un fichier difficile d'accès (à inclure dans les pages) "connexion_inc.php" -> prévoir plusieurs modes d'accès: PUBLIC, utilisateur, administrateur mysql_close($connexion); mysql_create_db("cartes_test",$connexion); $mysql_result=mysql_list_dbs($connexion); mysql_drop_db("cartes_test",$connexion); 70

71 Interface personnalisée: insertion des codes de connexion On place les définitions des codes de connexion dans un fichier à part connexion_inc.php <?php $login="mm "; $pass="media "; $db="carte "; $hote="mysql.infres.enst.fr:3307"; $connexion=mysql_pconnect($hote,$login,$pass); mysql_select_db($db,$connexion);?> On inclut ce fichier dans le script qui en a besoin execution.php <?php include("connexion_inc.php");?> 71

72 Clients personnalisés en php Fonctions php d accès à Mysql <?php $connexion = mysql_pconnect("mysql.infres.enst.fr:3307", "user", "motdepasse"); mysql_select_db("carte27",$connexion); $query="create table..."; mysql_query($query,$connexion); $query = "select * from cartes;"; $resultat = mysql_query($query,$connexion); $nb = mysql_num_rows($resultat,$connexion);?> 72

73 Clients personnalisés en php Exploitation des résultats d une requête de sélection <?php // ouverture de la connexion : mysql_connect() ou mysql_pconnect() $connexion or die("pb de connexion"); mysql_select_db("carte3"); // choix de la base de données // prendre tous les champs de la table cartes de la base carte3 $query = "select * from cartes ;" ; echo $query; // pour afficher le texte de la requête (mise au point) $mysql_result ; if ($mysql_result == FALSE) {echo "Pas de solution"; exit; } else // prendre tous les enregistrements trouvés et les afficher?> 73

74 Clients personnalisés en php Exploitation des résultats d une requête de sélection <?php // ouverture de la connexion : mysql_connect() ou mysql_pconnect() // choix de la base de données // prendre tous les champs de la table cartes de la base carte3.. // prendre chaque rangée while ($ligne = mysql_fetch_array($mysql_result)) // ligne est un tableau associatif dont les indices sont les // champs retenus pour la requête et les valeurs celles trouvées // dans la base de données pour ces champs { // mettre en forme les résultats en html, echo $ligne["c_nom_dest"];?> } 74

75 Clients personnalisés en php Fonctions php d accès à Mysql int mysql_query($requete [,$connexion]), int mysql_insert_id(): pour voir le numéro du dernier enregistrement inséré int mysql_num_rows(): pour voir s'il y a des résultats string mysql_error(), int mysql_errno(): pour contrôler les erreurs si une requête n'a pas donné de résultat 75

76 Confirmation du formulaire: insertion dans Mysql Le mécanisme de validation définitive de la carte commence par execution.php 1) Enregistrer les caractéristiques de la carte dans une base de données. Pour cela, il faut construire dynamiquement la requête sql d insertion d un nouvel enregistrement dans la base de données cartes. 76

77 Confirmation du formulaire: insertion dans Mysql Structure de la table des cartes execution.php CREATE TABLE cartes ( C_ID int(11) NOT NULL AUTO_INCREMENT, C_nom_dest text, C_nom_exp text, C_mail_dest text, C_mail_exp text, C_texte text, C_menu tinytext NOT NULL, I_photo tinytext NOT NULL, C_date date NOT NULL, PRIMARY KEY (C_ID) ); 77

78 Confirmation du formulaire: insertion dans Mysql Insérer un enregistrement dans la table cartes execution.php INSERT INTO cartes (C_nom_dest, C_nom_exp, C_mail_dest, C_mail_exp, C_texte, C_menu, I_photo) VALUES ('Annie', 'Philippe', 'Bonjour', 'Bravo', 'marguerites.jpg'); Le champ C_ID n est pas mentionné, il s incrémentera automatiquement. 78

79 Confirmation du formulaire: insertion dans Mysql Création dynamique de la commande d insertion INSERT INTO cartes (C_nom_dest, C_nom_exp, C_mail_dest, C_mail_exp, C_texte, C_menu, I_photo) VALUES ('$nomdest', '$nomexp', '$maildest', '$mailexp', '$texte', '$menu', '$image'); Il faut placer cette commande dans une chaîne php pour qu elle soit ensuite envoyée à la fonction mysql_query(). Il faudra échapper (\) les apostrophes. $query="insert INTO cartes (C_nom_dest, C_nom_exp, C_mail_dest, C_mail_exp, C_texte, C_menu, I_photo) VALUES ('$nomdest', '$nomexp', '$maildes', '$mailexp', '$texte', '$menu', '$image');"; Il reste enfin à exécuter cette commande d insertion: $resultat=mysql_query($query,$connexion); 79

80 Confirmation du formulaire: insertion dans Mysql Création dynamique de la commande d insertion En principe, si la commande d insertion a été correctement constituée, celle-ci s effectuera normalement. Si ce n est pas le cas, on peut ajouter une instruction d affichage de celle-ci: echo $query; On peut alors effectuer un contrôle visuel de cette commande. Si l erreur n est pas probante, on pourra, à l aide d un copier-coller dans phpmyadmin, effectuer celle-ci dans cet environnement et voir quel est son diagnostic. Lorsqu on sait que le mécanisme fonctionne bien, on récupère le numéro d enregistrement ainsi créé. $n=mysql_insert_id(); Il nous servira pour l envoi de mail et l affichage de la carte repérée à l aide de ce numéro. 80

81 Rappel: Schéma de principe du système formulaire.php validation.php execution.php (inclut connexion_inc.php) <form > </form> validation.php Modification <form > </form> execution.php insert into mail recapitulatif.php carte.php select * from cartes ; select * from cartes where C_ID=3 ; Mail : 81

82 Confirmation du formulaire: envoi de mail Le mécanisme de validation définitive de la carte continue par execution.php 2) Envoyer un au destinataire. On utilise la fonction php d envoi de mail: mail($adresse_dest,$sujet,$texte, "From: $adresse_exp\nreplyto: $adresse_exp"); Il faut donc définir les variables ainsi utilisées. Pour les adresses, il suffit reprendre ce qui a été transmis. Pour les autres, il va falloir les constituer. Par exemple: $sujet="envoi d une carte postale"; $message="bonjour $nom_dest,... "; 82

83 Fonction php d envoi de mail Définition du message qui sera transmis en html $message="bonjour $nom_dest, une carte postale vous est envoyée. Vous pouvez la consulter à l adresse: $nb. <br /> signé $nom_exp"; Le message peut être bien plus complexe et contenir des images, balises html interprétées. Cette fois-ci, le script php n est pas l exécution d un formulaire. Il peut néanmoins utiliser l envoi d un paramètre grâce à la méthode GET qui est ici explicite avec l utilisation du? suivi du nom du paramètre transmis et de la valeur qui lui est attribuée. Il faudra ensuite modifier légèrement votre script carte.php pour prendre en compte cette nouvelle donnée. 83

84 Fonction php d envoi de mail Envoi d un transmis en html $sujet = "Sujet de l' "; $message = "Bonjour,<br /> <strong>ceci est un message html envoyé grâce à php.</strong><br />"; $destinataire = "destinataire@domaine.com"; $headers = "From: \"expediteur moi\"<moi@domaine.com>\n"; $headers.= "Reply-To: moi@domaine.com\n"; $headers.= "Content-Type: text/html; charset=\"iso \""; if (mail($destinataire,$sujet,$message,$headers)) { echo "L' a bien été envoyé."; } else { echo "Une erreur c'est produite lors de l'envoi de l' ."; } 84

85 Confirmation du formulaire: affichage de la carte Le mécanisme de validation définitive de la carte se termine par execution.php 3) La prise en compte du stockage sur base de données des caractéristiques de la carte. Le mail d information au destinataire contiendra entre-autres un lien vers: carte.php?n=3 si l enregistrement concerné est au numéro 3. Pour l exécution du script, il faut donc aller chercher cet enregistrement à l aide d une commande SQL et récupérer ces caractéristiques. 85

86 Confirmation du formulaire: affichage de la carte L affichage de la carte doit pouvoir se faire dans deux contextes différents: 1) Affichage au moment de la création de la carte. C est ce que vous avez déjà écrit. 2) Affichage par l utilisateur final. carte.php La présentation doit être la même. Seule va changer la façon dont on récupère ses caractéristiques. Il nous faut donc déterminer dans quel cas nous nous trouvons. 1) Soit c est au moment de la création, la variable $n ne doit alors pas pouvoir être accessible. On continue alors à fonctionner comme avant. 2) Soit c est par l utilisateur final, il faudra alors exécuter la commande sql: $query="select * from cartes where C_ID=$n"; 86

87 Confirmation du formulaire: affichage de la carte <?php $n=$_get["n"]; if ($n == 0) // cas du simple contrôle { // pas de changement dans l initialisation des paramètres $nom_dest=$_get["nom_dest"]; // etc pour tous les champs } else // cas de l utilisateur final { include("connexion_inc.php"); $query="select * from cartes where C_ID=$n"; $resultat=mysql_query($query,$connexion); $ligne=mysql_fetch_array($resultat); $nom_dest=$ligne["c_nom_dest"]; $nom_exp=$ligne["c_nom_exp"]; $mail_dest=$ligne["c_mail_dest"]; // etc pour tous les champs } carte.php // Le reste qui est l affichage de la carte proprement dit ne change pas.?> 87

88 Confirmation du formulaire: affichage de la carte Un plus: Dès l instant qu on a les informations de constitution de la carte, on peut proposer au destinataire de la carte de répondre tout de suite à l expéditeur en lui donnant l adresse du formulaire de création pré-rempli avec les noms et les mails échangés (le destinataire devient l expéditeur et réciproquement). carte.php Cela se fera au moment de l affichage de la carte avec un bouton de formulaire dynamique à champs cachés qui envoie le script formulaire.php partiellement pré-rempli (les messages et la photo seront laissés au choix) 88

89 Confirmation du formulaire: afficher l ensemble Il peut être intéressant d avoir accès à l ensemble des cartes de vœux qui ont été constituées pour les visualiser et par exemple éviter d envoyer plusieurs cartes à la même personne Dans ce cas, après confirmation de création de la carte, on peut introduire un lien vers un script qui fera le travail. Ce récapitulatif peut aussi être disponible dans le formulaire du départ, ou dans la vitrine. recapitulatif.php carte.php?n=9 carte.php?n=10 carte.php?n=12 89

90 Confirmation du formulaire: afficher l ensemble <?php include("connexion_inc.php"); $query="select C_ID,C_nom_dest from cartes;"; // dans toutes les cartes $resultat=mysql_query($query,connexion); recapitulatif.php echo "<table>"; // debut du tableau echo "<tr><th>numéro</th><th>destinataire</th></tr>"; while (($ligne=mysql_fetch_array($resultat))) { // pour chaque carte trouvée $n=$ligne["c_id"]; $nom_dest=$ligne["c_nom_dest"]; echo "<tr>"; echo "<td>$n</td>"; echo "<td>$nom_dest</td>"; echo "<td><a href= carte.php?n=$n >voir</a></td>"; echo "<td><a href= supprimer.php?n=$n >retirer</a></td>"; echo "</tr>"; }?> echo "</table>"; // fin du tableau On peut ensuite ajouter un lien vers le formulaire de création de cartes de voeux. 90

91 Suppression d une carte Pour effectuer une suppression, il suffit d effectuer une connexion à la base de données et d exécuter la commande de suppression d une carte dont on connaît le numéro. Remarque: il ne sera désormais plus possible de l afficher Attention Cette suppression s effectue sans aucun contrôle. Pour le bien, il ne faudrait la faire qu après une confirmation de suppression définitive supprimer.php <?php $n=$_get["n"]; include("connexion_inc.php"); $query="delete * from cartes where C_ID=$n"; $resultat=mysql_query($query,connexion);?> 91

92 Pour aller plus loin Dans le cas d une base de données dont la structure est plus complexe, toutes les opérations de consultation, ajout, suppression se complexifient également. Le formulaire de création puisera les images dans la base de données et non plus dans le répertoire physique. Il transmettra le numéro d enregistrement de l image et non le nom du fichier. schéma conceptuel de la base avec 2 tables Toutes les opérations se feront en utilisant ce numéro (ajout d une carte par exemple). Pour l affichage de la carte, il faudra aller chercher les données dans deux tables différentes (jointure entre tables) select * from images,cartes where images.i_id=cartes.i_id; 92

93 Examen «Sites web dynamiques avec PHP et Mysql» Évaluation de votre travail : (rendre votre travail en fin de séance obligatoirement et une seconde version le 7 janvier au plus tard) Carte de vœux dynamique php 1) M envoyer une carte de vœux (danzart@telecom-paristech.fr) par envoi automatique. Le mail doit contenir si possible l url à cliquer pour afficher la carte. 2) M envoyer par les noms des scripts que vous avez écrits avec l endroit où ils se trouvent (dossier se trouvant dans le public_html) Merci de votre attention 93

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS) PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et

Plus en détail

PHP 4 PARTIE : BASE DE DONNEES

PHP 4 PARTIE : BASE DE DONNEES PHP 4 PARTIE : BASE DE DONNEES 1. Introduction 2. Présentation de MySQL 3. Principe 4. Connexion 5. Interrogation 6. Extraction des données 7. Fonctions de services 8. Traitement des erreurs 9. Travaux

Plus en détail

Stockage du fichier dans une table mysql:

Stockage du fichier dans une table mysql: Stockage de fichiers dans des tables MYSQL avec PHP Rédacteur: Alain Messin CNRS UMS 2202 Admin06 30/06/2006 Le but de ce document est de donner les principes de manipulation de fichiers dans une table

Plus en détail

Pratique et administration des systèmes

Pratique et administration des systèmes Université Louis Pasteur Licence Informatique (L2) UFR de Mathématiques et Informatique Année 2007/2008 1 But du TP Pratique et administration des systèmes TP10 : Technologie LAMP Le but de ce TP est de

Plus en détail

PHP 5. La base de données MySql. A. Belaïd 1

PHP 5. La base de données MySql. A. Belaïd 1 PHP 5 La base de données MySql A. Belaïd 1 Base de données C est quoi une base de données? Une base de données contient une ou plusieurs tables, chaque table ayant un ou plusieurs enregistrements Exemple

Plus en détail

Mysql avec EasyPhp. 1 er mars 2006

Mysql avec EasyPhp. 1 er mars 2006 Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition

Plus en détail

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé) Introduction PHP = Personal Home Pages ou PHP Hypertext Preprocessor Langage de script interprété (non compilé) Plan Avantages Fonctionnement interne Bases du langage Formulaires Envoi d un email Avantages

Plus en détail

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework L'objectif de ce document est de poser des bases de réflexion sur la modélisation d'un projet réalisé

Plus en détail

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement Guillaume HARRY l Contenu sous licence Creative Commons CC-BY-NC-ND Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement P. 2 1. Introduction 2.

Plus en détail

I. MySQL : Serveur et SGBD

I. MySQL : Serveur et SGBD Le Système de Gestion de Base de Données MySQL I. MySQL : Serveur et SGBD Menu I. MySQL : Serveur et SGBG II. Création d'une base de données avec MySQL MySQL est un système de gestion et conception de

Plus en détail

L envoi d un formulaire par courriel. Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248

L envoi d un formulaire par courriel. Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248 L envoi d un formulaire par courriel Configuration requise... 236 Mail Texte... 237 Mail HTML... 242 Check-list... 248 Chapitre 9 L envoi d un formulaire par courriel L envoi par courriel d informations

Plus en détail

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin Sécurité des sites Web Pas un cours un recueil du net INF340 Jean-François Berdjugin Vulnérabilité Définition (wikipédia) : Dans le domaine de la sécurité informatique, une vulnérabilité est une faiblesse

Plus en détail

Programmation Web. Madalina Croitoru IUT Montpellier

Programmation Web. Madalina Croitoru IUT Montpellier Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance

Plus en détail

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012

TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 TP JAVASCRIPT OMI4 TP5 SRC1 2011-2012 FORMULAIRE DE CONTACT POUR PORTFOLIO PRINCIPE GENERAL Nous souhaitons réaliser un formulaire de contact comprenant les champs suivants : NOM PRENOM ADRESSE MAIL MESSAGE

Plus en détail

PHP et les Bases de données - Généralités

PHP et les Bases de données - Généralités PHP et les Bases de données - Généralités Conception d une base de données Méthodes utilisées : MERISE, UML Modèle conceptuel des données MCD, Modèle logique MLD, Modèle Physique MPD. Ces aspects seront

Plus en détail

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES

Plus en détail

PHP 5.4 Développez un site web dynamique et interactif

PHP 5.4 Développez un site web dynamique et interactif Editions ENI PHP 5.4 Développez un site web dynamique et interactif Collection Ressources Informatiques Table des matières Table des matières 1 Chapitre 1 Introduction 1. Objectif de l'ouvrage.............................................

Plus en détail

La programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2)

La programmation orientée objet Gestion de Connexions HTTP Manipulation de fichiers Transmission des données PHP/MySQL. Le langage PHP (2) Le langage PHP (2) Walid Belkhir Université de Provence belkhir@cmi.univ-mrs.fr http://www.lif.univ-mrs.fr/ belkhir/ 1 / 54 1 La programmation orientée objet 2 Gestion de Connexions HTTP 3 Manipulation

Plus en détail

Olivier Mondet http://unidentified-one.net

Olivier Mondet http://unidentified-one.net T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage

Plus en détail

SYSTÈMES D INFORMATIONS

SYSTÈMES D INFORMATIONS SYSTÈMES D INFORMATIONS Développement Modx Les systèmes de gestion de contenu Les Content Management Système (CMS) servent à simplifier le développement de sites web ainsi que la mise à jour des contenus.

Plus en détail

Manuel d'installation

Manuel d'installation CyberMUT P@iement P@iement CIC P@iement OBC SERVICE SECURISE DE PAIEMENT INTERNET PAR CARTE BANCAIRE (Sécurisé par le protocole SSL) Manuel d'installation (Document 2/2) EURO Sp.Tech. 1.2.8 Octobre 2001

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

Les BASES de DONNEES dans WampServer

Les BASES de DONNEES dans WampServer Les BASES de DONNEES dans WampServer 1 Définitions Générales Une base de données (BDD) permet d'enregistrer, de stocker, de ranger des données de façon organisée et hiérarchisée. SQL est le langage qui

Plus en détail

Manuel d utilisation du module Liste de cadeaux PRO par Alize Web

Manuel d utilisation du module Liste de cadeaux PRO par Alize Web Manuel d utilisation du module Liste de cadeaux PRO par Alize Web INSTALLER ET CONFIGURER LE MODULE (BACK OFFICE) 2 Réglages des performances 2 Télécharger le module 3 Installer le module 4 Configurer

Plus en détail

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

Plus en détail

Bases de données relationnelles

Bases de données relationnelles Bases de données relationnelles Système de Gestion de Bases de Données Une base de données est un ensemble de données mémorisé par un ordinateur, organisé selon un modèle et accessible à de nombreuses

Plus en détail

Le Langage De Description De Données(LDD)

Le Langage De Description De Données(LDD) Base de données Le Langage De Description De Données(LDD) Créer des tables Décrire les différents types de données utilisables pour les définitions de colonne Modifier la définition des tables Supprimer,

Plus en détail

Introduction à JDBC. Accès aux bases de données en Java

Introduction à JDBC. Accès aux bases de données en Java Introduction à JDBC Accès aux bases de données en Java Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Introduction JDBC : Java Data Base Connectivity

Plus en détail

Langage SQL : créer et interroger une base

Langage SQL : créer et interroger une base Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,

Plus en détail

Création de formulaires interactifs

Création de formulaires interactifs SESSION 16 Création de formulaires interactifs Programme de la session Lancer un sondage en utilisant divers éléments d'entrée de formulaire Traiter les entrées utilisateur Activer un script à partir d'un

Plus en détail

SQL Historique 1982 1986 1992

SQL Historique 1982 1986 1992 SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse

Plus en détail

1 Introduction et installation

1 Introduction et installation TP d introduction aux bases de données 1 TP d introduction aux bases de données Le but de ce TP est d apprendre à manipuler des bases de données. Dans le cadre du programme d informatique pour tous, on

Plus en détail

Formulaires et Compteurs

Formulaires et Compteurs Formulaires et Compteurs Création de formulaires et de compteurs avec extensions FrontPage ou ASP. INFORMATIONS CONNEXES Le but du présent manuel est de permettre à une personne familière d Internet de

Plus en détail

Formulaire pour envoyer un mail

Formulaire pour envoyer un mail Formulaire pour envoyer un mail AVERTISSEMENT : Ce tuto est une compilation de plusieurs sources trouvées sur internet, dont les références sont données à la fin de cet article. Le but de ce tutoriel n'est

Plus en détail

PDO : PHP Data Object 1/13

PDO : PHP Data Object 1/13 PDO : PHP Data Object 1/13 Tous ne sont que des extensions... Les fonstions mysql_* : API mysql Les fonctions mysqli_* aussi Il en est de même pour PDO PDO (avec le pilote PDO MySQL Driver et Extension

Plus en détail

Création d'un site dynamique en PHP avec Dreamweaver et MySQL

Création d'un site dynamique en PHP avec Dreamweaver et MySQL Création d'un site dynamique en PHP avec Dreamweaver et MySQL 1. Création et configuration du site 1.1. Configuration de Dreamweaver Avant de commencer, il est nécessaire de connaître l'emplacement du

Plus en détail

Java DataBaseConnectivity

Java DataBaseConnectivity Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage

Plus en détail

Gestion de stock pour un magasin

Gestion de stock pour un magasin Département d Informatique Université de Fribourg, Suisse http://diuf.unifr.ch Gestion de stock pour un magasin Stock online utilise ASP/MS-Access DO Thi Tra My No étudiant : 05-333-750 Travail de séminaire

Plus en détail

Devenez un véritable développeur web en 3 mois!

Devenez un véritable développeur web en 3 mois! Devenez un véritable développeur web en 3 mois! L objectif de la 3W Academy est de former des petits groupes d élèves au développement de sites web dynamiques ainsi qu à la création d applications web

Plus en détail

Hébergement de site web Damien Nouvel

Hébergement de site web Damien Nouvel Hébergement de site web Plan L'hébergeur Le serveur web Apache Sites dynamiques 2 / 27 Plan L'hébergeur Le serveur web Apache Sites dynamiques 3 / 27 L'hébergeur L'hébergeur sous-traite l'architecture

Plus en détail

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10 Dossier Technique Page 1/10 Sommaire : 1. REPONSE TECHNIQUE A LA DEMANDE 3 1.1. Prise en compte de la dernière version de phpcas 3 1.2. Gestion de la connexion à GRR 3 1.2.1. Récupération des attributs

Plus en détail

Manuel du composant CKForms Version 1.3.2

Manuel du composant CKForms Version 1.3.2 Manuel du composant CKForms Version 1.3.2 Ce manuel vous présente les principales fonctionnalités du composant CKForms y compris le module et le plug-in CKForms 1.3 est la nouvelle version du composant

Plus en détail

OpenPaaS Le réseau social d'entreprise

OpenPaaS Le réseau social d'entreprise OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3

Plus en détail

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de Données relationnelles et leurs systèmes de Gestion III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation

Plus en détail

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013 NFA 008 Introduction à NoSQL et MongoDB 25/05/2013 1 NoSQL, c'est à dire? Les bases de données NoSQL restent des bases de données mais on met l'accent sur L'aspect NON-relationnel L'architecture distribuée

Plus en détail

Architectures web/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

Thème : Création, Hébergement et référencement d un site Web

Thème : Création, Hébergement et référencement d un site Web Formation au profit des enseignants de l'université Ibn Zohr Thème : Création, Hébergement et référencement d un site Web Omar El Kharki & Jamila Mechbouh http://perso.menara.ma/~elkharki/ Ou bien http://www.elkharki.africa-web.org/

Plus en détail

Installation et Mise en œuvre de MySQL

Installation et Mise en œuvre de MySQL T-GSI STAGE RENOVATION - SQL.Chapitre 2 - Installation et Mise en œuvre de MySQL Olivier Mondet http://unidentified-one.net A. Pourquoi choisir MySQL? A.1. MySQL, très controversé La base de données MySQL

Plus en détail

arcopole Studio Annexe 4 Intégration LDAP et processus d authentification Site du programme arcopole : www.arcopole.fr

arcopole Studio Annexe 4 Intégration LDAP et processus d authentification Site du programme arcopole : www.arcopole.fr arcopole Studio Annexe 4 Intégration LDAP et processus d authentification Site du programme arcopole : www.arcopole.fr Auteur du document : ESRI France Version de la documentation : 1.2.0.0 Date de dernière

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

CREATION d UN SITE WEB (INTRODUCTION)

CREATION d UN SITE WEB (INTRODUCTION) CREATION d UN SITE WEB (INTRODUCTION) Environnement : World Wide Web : ordinateurs interconnectés pour l échange d informations ( de données) Langages : HTML (HyperText Markup Language) : langages pour

Plus en détail

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5

1. Qu'est-ce que SQL?... 2. 2. La maintenance des bases de données... 2. 3. Les manipulations des bases de données... 5 1. Qu'est-ce que SQL?... 2 2. La maintenance des bases de données... 2 2.1 La commande CREATE TABLE... 3 2.2 La commande ALTER TABLE... 4 2.3 La commande CREATE INDEX... 4 3. Les manipulations des bases

Plus en détail

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.

Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs. Connexion à 4D Server depuis une page ASP Par Noreddine MARGOUM, Technicien Contrôle Qualité, 4D S.A. Note technique 4D-200403-08-FR Version 1 Date 1 Mars 2004 Résumé Le propos de cette note technique

Plus en détail

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin

DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin DOSSIER D'ACTIVITES SUR LE PHP N 03 Créer une base de données MySQL avec PHPMyAdmin Objectifs : Apprendre à l apprenant à lancer un serveur local «Apache» Apprendre à l'apprenant à lancer un serveur MySQL

Plus en détail

1. Base de données SQLite

1. Base de données SQLite Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis

Plus en détail

Attaques applicatives

Attaques applicatives Attaques applicatives Attaques applicatives Exploitation d une mauvaise programmation des applications Ne touche pas le serveur lui-même mais son utilisation/ configuration Surtout populaire pour les sites

Plus en détail

Comment développer et intégrer un module à PhpMyLab?

Comment développer et intégrer un module à PhpMyLab? Comment développer et intégrer un module à PhpMyLab? La structure du fichier Afin de conserver une homogénéité et une cohérence entre chaque module, une structure commune est utilisée pour chacun des modules

Plus en détail

BTS S.I.O. 2012-2013 PHP OBJET. Module SLAM4. Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais

BTS S.I.O. 2012-2013 PHP OBJET. Module SLAM4. Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais BTS S.I.O. 2012-2013 PHP OBJET Module SLAM4 Nom du fichier : PHPRévisionObjetV2.odt Auteur : Pierre Barais Table des matières 1 But... 3 2 Les bases :... 3 3 Utilisation d'une classe : Instanciation...3

Plus en détail

Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org

Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org Comment Connecter une Base de Données MySQL via un Driver JDBC Avec OpenOffice.org Diffusé par Le Projet Documentation OpenOffice.org OpenOffice.org Documentation Project How-To Table des matières 1. Introduction...3

Plus en détail

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données Base de Données Cours Introductif Base de Données Quelques chiffres Évolution annuelle moyenne 2004/2000 15% +20% 12% 5% 0.5% 2000 2004 L3G IA SG mono poste : Part de marché 5% 5% 10% Paradox 65% SG 15%

Plus en détail

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A.

ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. ContactForm et ContactFormLight - Gestionnaires de formulaire pour Prestashop Edité par ARETMIC S.A. - 1 - PREAMBULE Les conditions générales d utilisation détaillant l ensemble des dispositions applicables

Plus en détail

PHP. PHP et bases de données

PHP. PHP et bases de données Accés aux bases de données Une des raisons du succès de PHP Support d un grand nombre de bases - MySQL - Oracle - PostgreSQL - SQLite - Microso> Access - DBM - IBM Informix -... Accés aux bases de données

Plus en détail

Dans l'article précédent, vous avez appris

Dans l'article précédent, vous avez appris Pour les débutants Les différents formats de sortie proposés par PHPExcel La bibliothèque orientée objet PHPExcel permet de lire et créer des fichiers pour tableurs. Dans cette série d articles, vous apprendrez

Plus en détail

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed 6, bd maréchal Juin F-14050 Caen cedex 4 Spécialité Informatique 2 e année Rapport de projet Gestion du parc informatique matériel et logiciel de l Ensicaen SAKHI Taoufik SIFAOUI Mohammed Suivi ENSICAEN

Plus en détail

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions

Plan Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Transactions Général Prévisionnel (1/2) (non contractuel) Internet et Outils L1/IO2 2006-2007 S2-IO2 Bases de données: Jointures, Cours Internet et Outils: [1/12] Intro, Internet, Web, XHTML (2H) [2/12] XHTML(2H) [3/12]

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

Guide d utilisation. Version 1.1

Guide d utilisation. Version 1.1 Guide d utilisation Version 1.1 Guide d utilisation Version 1.1 OBJECTIF LUNE Inc. 2030 boulevard Pie-IX, bureau 500 Montréal (QC) Canada H1V 2C8 +1 514-875-5863 sales@ca.objectiflune.com http://captureonthego.objectiflune.com

Plus en détail

Table des matières Avant-propos... V Scripting Windows, pour quoi faire?... 1 Dans quel contexte?

Table des matières Avant-propos... V Scripting Windows, pour quoi faire?... 1 Dans quel contexte? Avant-propos... V CHAPITRE 1 Scripting Windows, pour quoi faire?... 1 Dans quel contexte?.................................................. 1 La mauvaise réputation............................................

Plus en détail

cedric.foll@(education.gouv.fr laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007

cedric.foll@(education.gouv.fr laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007 A t t a q u e s c o n t r e l e s a p p l i s w e b cedric.foll@(education.gouv.fr laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007 D e l ' u t i l i t é d e l ' a t t a

Plus en détail

PHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward

PHP CLÉS EN MAIN. 76 scripts efficaces pour enrichir vos sites web. par William Steinmetz et Brian Ward PHP CLÉS EN MAIN 76 scripts efficaces pour enrichir vos sites web par William Steinmetz et Brian Ward TABLE DES MATIÈRES INTRODUCTION 1 1 TOUT CE QUE VOUS AVEZ TOUJOURS VOULU SAVOIR SUR LES SCRIPTS PHP

Plus en détail

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE Cas Neptune hôtel Base de données et langage SQL Propriété Intitulé long Formation concernée Matière Notions Transversalité Présentation Description Neptune Hôtel. L interrogation d une base de données

Plus en détail

Les bases de données

Les bases de données Les bases de données Introduction aux fonctions de tableur et logiciels ou langages spécialisés (MS-Access, Base, SQL ) Yves Roggeman Boulevard du Triomphe CP 212 B-1050 Bruxelles (Belgium) Idée intuitive

Plus en détail

Techniques de Programmation pour Internet

Techniques de Programmation pour Internet Séance 7 Transactions par CGI Année Spéciale Informatique ENSIMAG 2002-2003 James L. Crowley Anullé Le but de l'exercice est d'introduire un certain nombre de constructions en PERL utiles pour la programmation

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09 INFORMATIQUE & WEB Code du diplôme : CP09 Passionné par l informatique et le web, vous souhaitez obtenir une certification dans un domaine porteur et enrichir votre CV? PARCOURS CERTIFICAT PROFESSIONNEL

Plus en détail

Partie 0 : Gestion des tablespace et des utilisateurs... 3

Partie 0 : Gestion des tablespace et des utilisateurs... 3 Sommaire Partie 0 : Gestion des tablespace et des utilisateurs... 3 1- Créer deux TableSpaces votre_nom-tbs et Votre_nom-TempTBS :... 3 2. Créer un utilisateur qui porte votre nom :... 3 3. Attribuer à

Plus en détail

Initiation à html et à la création d'un site web

Initiation à html et à la création d'un site web Initiation à html et à la création d'un site web Introduction : Concevoir un site web consiste à définir : - l'emplacement où ce site sera hébergé - à qui ce site s'adresse - le design des pages qui le

Plus en détail

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES Dossier G11 - Interroger une base de données La base de données Facturation contient tout un ensemble d'informations concernant la facturation de la SAFPB (société anonyme de fabrication de produits de

Plus en détail

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé

Plus en détail

Créer et partager des fichiers

Créer et partager des fichiers Créer et partager des fichiers Le rôle Services de fichiers... 246 Les autorisations de fichiers NTFS... 255 Recherche de comptes d utilisateurs et d ordinateurs dans Active Directory... 262 Délégation

Plus en détail

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

RÉALISATION D UN SITE DE RENCONTRE

RÉALISATION D UN SITE DE RENCONTRE RÉALISATION D UN SITE DE RENCONTRE Par Mathieu COUPE, Charlène DOUDOU et Stéphanie RANDRIANARIMANA Sous la coordination des professeurs d ISN du lycée Aristide Briand : Jérôme CANTALOUBE, Laurent BERNARD

Plus en détail

Le langage SQL (première partie) c Olivier Caron

Le langage SQL (première partie) c Olivier Caron Le langage SQL (première partie) 1 Plan Le S.G.B.D. postgres Le langage SQL Langage de manipulation de données Langage de requêtes 2 Quelques mots sur Postgres (1/2) Travaux de Stonebraker (Univ. Berkeley)

Plus en détail

TP Contraintes - Triggers

TP Contraintes - Triggers TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution

Plus en détail

Bases de données élémentaires Maude Manouvrier

Bases de données élémentaires Maude Manouvrier Licence MI2E- 1ère année Outils en Informatique Bases de données élémentaires Maude Manouvrier Définitions générales et positionnement du cours dans la formation Vocabulaire relatif aux bases de données

Plus en détail

Formation. Module WEB 4.1. Support de cours

Formation. Module WEB 4.1. Support de cours Formation Module WEB 4.1 Support de cours Rédacteur Date de rédaction F.CHEA 08/02/2012 Les informations contenues dans ce document pourront faire l'objet de modifications sans préavis Sauf mention contraire,

Plus en détail

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et sécurisation des applications Web OSSIR 09/09/2002 Vulnérabilités, attaques et sécurisation des applications Web Pourquoi les firewalls sont impuissants patrick.chambet@edelweb.fr http://www.edelweb.fr http://www.chambet.com Page 1 Planning

Plus en détail

Modélisation et Gestion des bases de données avec mysql workbench

Modélisation et Gestion des bases de données avec mysql workbench Modélisation et Gestion des bases de données avec mysql workbench par novembre 2011 Table des matières 1 Installation 3 1.1 Ecran de chargement 3 1.2 Page d accueil 3 2 Réalisation d une base de données

Plus en détail

1 Position du problème

1 Position du problème Licence Science et Technologies - INF245 Examen session 1 - mai 2012 Durée : 2 heures Documents non autorisés Le barème est donné à titre indicatif 1 Position du problème Le Club Universitaire de Vélo

Plus en détail

www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3

www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 L i a m T A R D I E U www.evogue.fr SUPPORT DE COURS / PHP PARTIE 3 Sommaire Sommaire... 2 Eléments initiaux... 3 Base de données... 3 Tables... 4 membres... 4 commandes... 4 articles... 4 details_commandes...

Plus en détail

Création et Gestion des tables

Création et Gestion des tables Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5

Plus en détail