130 likes | 292 Views
PhP -MySQL. Pagora 2012/2013 CTD 1. Consignes. « Il s'agit de réaliser un site Web contenant une page d' acueil et un formulaire séparés pour que les visiteurs puissent enregistrer les données les concernant à imprimer dans une carte de visite générée en format pdf »
E N D
PhP-MySQL Pagora 2012/2013 CTD 1
Consignes • « Il s'agit de réaliser un site Web contenant une page d'acueil et un formulaire séparés pour que les visiteurs puissent enregistrer les données les concernant à imprimer dans une carte de visite générée en format pdf » • « Les données entrées doivent être enregistrées dans une base de données mySQL. » • « Le code séquençant les actions en fonction des boutons actionnés par le visiteur doit être contenu dans 1 fichier faisant office de programme principal. » • « Toutes les actions spécifiques doivent être réalisées par des sous-programmes contenus dans des fichiers de code dédiés. » • « L'ensemble des fichiers du site doit être structurellement organisé : ce qui est utile au graphisme, dans un dossier dédié, ce qui est utile à la réalisation des actions associées au formulaire, et plus généralement tous les sous-programmes, doivent être situés dans un dossier dédié. » • « Les cartes de visites doivent être prévisualisées en html, puis générées par les fonctions php d'une bibliothèque dédiée selon l'état d'avancement des séances. »
Organisation pratique • http://tiprof.fr/PHP-mySQL/(1)/org-prat.html • http://iihm.imag.fr/delamare/pagora/ • William.Delamare@imag.fr • Evaluation: • « La note sera calculée à partir des travaux rendus qui sont constitués des compte-rendus des séances et de l'accès en ligne au résultat du travail produit. Au fur et à mesure des séances, certains des travaux réalisés en séance doivent être rendus pour la séance suivante sous forme imprimée (recto/verso et éventuellement en noir&blanc à 2 par page). Le dernier travail doit être rendu sous forme imprimée comme pour les 3 autres travaux, mais aussi sous forme électronique : il vous est expressément demandé de constituer une archive avec un dossier contenant l'ensemble de vos fichiers, et de l'envoyer à l'enseignant par courrier électronique au plus tard pendant le WE suivant la dernière séance. » • « Attention : le non respect de ces consignes est sanctionné dans la note. De même, toute relance parce que les travaux n'ont pas été rendus dans les temps est aussi sanctionné. » • Ce cours s'appuie sur 2 pré-requis : • Connaissance et pratique des langages HTML et CSS • Bases de programmation (types entiers et chaînes, conditions et boucles, parcours d'un tableau, définition et utilisation de fonctions)
Client / serveur Page web statique Page web dynamique: Génération du contenu viaun langage de script
Client / Serveur • Client = html/css (+js) • Serveur • doit donc générer html/css • Outils: php/mySQL(Dans ce cours: pas de RIA Flex/As3, pas de PERL, ni applet Java, ni WebService, etc…)
Langage de scripts • Principes: • "calculer" les pages Web qu'un serveur doit renvoyer à un client pour une URL demandée. • URL = adresse d’un serveur + désignation d’un fichier • Logiciel client demande (click de souris sur des liens, etc…) : envoie d’une requête • Serveur envoie le fichier demandé • Au départ: envoie du fichier tel qu’enregistré en mémoire (donc duplication, etc…) • Maintenant: possibilité de créer à la volée le fichier à renvoyer • 2 types de scripts: • Côté serveur(avec environnement adapté) • Côté client (JavaScript, demande de permission)
Common Gateway Interface • CGI = interface de passerelle commune, entre: • Le serveur • Autre application (SGBD par exemple) • Langage: peu importe du moment qu’il peut • lire le flux de données d'entrée • traiter des chaînes de caractères • écrire sur le flux standard de sortie • Être exécuter ou interpréter par le serveur • Communication CGI/navigateur • 1 = requête du client (html, php, exe) • 2 = réponse du serveur avec le bon en-tête • content-type : text/html • content-type : image/gif • content-type : text/quicktime
Local / Distant • En local: • Edition des sources • Visualisation • Base de test • Donc • Editeur de fichiers • Navigateur (ff, opera…) + serveur local* (Apache, …) • Base de donnée • Ensuite: • Envoie des fichiers sources sur le serveur • Donc: • - logiciel FTP file:///on/se/fiche/du/chemin (statique) http://localhost/chemin/du/rep/www (dynamique) http://adresse/sur/le/net *: si les fichiers contiennent un langage script
Rappels html • Quelques balises utiles pour le cours • <p>…</p>: paragraphe • <hi>…</hi>: titre (important i = 1, moins important i = 6) • <center>…</center>: centrer « … » • <i>…</i> : « … » en italique (gras si <b>) • <a href=« … » >…</a> • Et encore mieux: http://www.codeshttp.com/baliseh.htm • Quelques règles (les miennes) • Pas de style dans les fichiers html (<td style=« … ») • <A completer au fur et a mesure>
Rappels html: tableaux • - Le CSS vous permettra de rendre • le tableau plus présentable • Bordures • Couleurs • Centrer/justifier le texte • Etc
Rappels html: formulaires • Balise <form>…</form> • Attributs: • method • post • get • Différences • Des valeurs passées par GET se voient dans l’URLex: http://maPage.php?val1=huhu&val2=hehe • GET limité en taille (255 caractères) • Action: • Ce qu’il se passe après la validation • Script php, perl, … • envoie d’un mail • Etc Exemple complet:(source et résultat) file:///Users/admin/Documents/Vacations/pagora/cours/ex_form.html http://iihm.imag.fr/delamare/pagora/exemples/ex_form.html
TD1 • Création d’une page index.html • La visualiser en http://localhost/… • Création d’un formulaire • (On pourra directement mettre l’extension .php) • Champs ?