Introduction Au Langage Php
Mémoires Gratuits : Introduction Au Langage Php. Rechercher de 53 000+ Dissertation Gratuites et Mémoiresr dans le champs. e e e • La valeur "password" permet d’obtenir le mˆme r´sultat mais les caract`res saisis sont remplac´s dans le champs par des *. e Exemple : login : mot de passe :
Il est important de remarquer la pr´sence de l’attribut name dans l’exemple e pr´c´dent. Sa valeur d´finit le nom de la variable qui sera associ´e aux donn´es e e e e e saisies. • La valeur "checkbox" permet d’obtenir des cases ` cocher. On les utilise a lorsque l’utilisateur doit choisir parmi plusieurs options pr´d´finies. e e
2
Exemple : Quel(s) langages de programmation pr´f´rez-vous ? e e Java PHP ActionScript JavaScript
• La valeur "radio" est utilis´e ` la place de "checkbox" lorsqu’un seul choix e a est possible. On parle alors de bouton radio. Exemple : Quel est votre sexe ? Masculin F´minin e
Remarquez la pr´sence de l’attribut value qui permet d’attribuer une valeur e pr´d´finie ` l’´l´ment input. e e a ee • La valeur "hidden" est utilis´ pour rendre le contrˆle invisible dans le fore o mulaire. C’est tr`s utile pour transmettre des donn´es via le formulaire en e e les cachant ` l’utilisateur. a • La valeur "reset" permet de donner ` l’´l´ment input l’apparence d’un boua ee ton qui, une fois cliqu´, r´initialise les donn´es contenues dans le formulaire. e e e • La valeur "submit" permet ´galement d’obtenir un bouton dont le rˆle est e o de valider le formulaire qui appellera alors le fichier (script) dont l’URL est pr´cis´e par l’attribut action de l’´l´ment form. Sa pr´sence est donc indise e ee e pensable pour transmettre les informations. Le code HTML suivant : Exemple : Nom : Pr´nom : e
3
affichera la page suivante, et si l’utilisateur clique sur le bouton Soumettre l’URL appel´e sera : e http://machine.domaine/cible.php?nom=Jean&Prenom=Dupond Vous remarquez que les informations envoy´es par le formulaire sont transmises e dans l’URL. Ce comportement est obtenu lorsqu’on utilise la m´thode get dans le e formulaire. Les donn´es re¸ues par le script PHP appel´ sont exploitables a l’aide e c e ` 1 du tableau associatif $_GET[] o` les cl´s et valeurs correspondent respectivement u e aux noms et valeurs (attribut name) des ´l´ments de contrˆles contenus dans le ee o formulaire appelant. Il est souvent gˆnant de voir les donn´es apparaˆ en clair dans l’URL (par e e ıtre exemple un mot de passe). Pour ´viter cela, on utilise alors la m´thode post et le e e script PHP appel´ exploite les donn´es ` l’aide du tableau associatif $_POST[]. e e a
Exercice 1 : ´ Ecrire un script PHP qui affiche dans la page les informations transmises en ajoutant ` la suite de l’URL ?user=robrice&mdp=tralala. Faire en sorte que ce a script soit valable quelque soit le nombre, le nom et la valeur des informations donn´es dans l’URL (?a=...&b=...&c=...). e
1.2
Les menus
` A l’aide des ´l´ments select et option, il est possible de proposer des menus, ee appel´s aussi listes d´roulantes, dans les formulaires. e e Exemple : S´lectionnez votre langage pr´f´r´ : e e e e Java PHP ActionScript JavaScript
1.3
Les zones de texte
Lorsque la quantit´ de texte ` saisir dans un formulaire est importante, l’´l´ment e a ee input n’est plus adapt´. Il faut alors utiliser l’´l´ment textarea. Pour cr´er cette e ee e
1. Cf. infra section 3.
4
zone, on doit pr´ciser dans la balise sa taille en nombre de lignes e (attribut rows) et de colonnes (attribut cols). Exemple : Saisissez votre commentaire :
Exercice 2 : ´ 1. Ecrire un formulaire qui fait appel au script de l’exercice pr´c´dent pour e e afficher le contenu de ces diff´rents champs : e – un champs de type texte – un champs de type mot de passe – un champs de type liste d´roulante e 2. Transformer le formulaire pr´c´dent de mani`re ` n’utiliser qu’un seul script e e e a (un seul fichier PHP). 3. Modifier le formulaire pour qu’il s’affiche pr´rempli une fois valid´. e e
Exercice 3 : Cr´er un formulaire comprenant un groupe de champs (balise fieldset) ayant e pour titre ”Adresse client”. Le groupe doit permettre la saisie du nom, du pr´nom, de l’adresse, de la ville et du code postal. Les donn´es sont ensuite e e trait´es par un fichier PHP s´par´ r´cup´rant les donn´es et les affichant dans un e e e e e e tableau XHTML.
2
Redirection
La fonction header permet de sp´cifier un en-tˆte HTTP lors de l’envoi des fichiers e e HTML par le serveur web. On l’utilisera pour faire de la redirection. Attention cette fonction : • doit ˆtre utilis´e avant tout envoi d’information vers le navigateur e e (donc avant la balise html et avant toute fonction echo) • a une syntaxe rigoureuse → pas d’espace entre Location et :.
5
Exemple :
Exercice 4 : Dans la perspective de cr´ation d’un site d’agence immobili`re, cr´ez un e e e formulaire comprenant trois boutons de type submit nomm´s Vendre, Acheter et e Louer. En fonction du choix effectu´ par le visiteur, redirigez-le vers une page e sp´cialis´e dont le contenu r´ponde au crit`re choisi. e e e e
3
Les variables superglobales
Lorque nous avons eu besoin de r´cup´rer les donn´es valid´es dans un formulaire, e e e e nous avons utilis´ les tableaux associatifs $_GET[] ou $_POST[], selon la m´thode e e utilis´e par le formulaire. Ces variables sont disponibles depuis n’importe quel e endroit du script. Ce sont des variables superglobales et PHP en d´finit un certain e nombre : • $_COOKIE[] : contient les cl´s et les valeurs d´finies comme cookie (voir e e section 4 de ce document). • $_ENV[] : contient les cl´s et les valeurs des variables d’environnement du e serveur. • $_FILES[] : contient les informations sur les fichiers upload´s sur le serveur e (voir section ?? de ce document). • $_GET[] : contient les cl´s et les valeurs soumises par la m´thode get d’un e e formulaire. • $_POST[] : contient les cl´s et les valeurs soumises par la m´thode post d’un e e formulaire. • $_REQUEST[] : tableau combin´ des 3 tableaux $_COOKIE, $_GET et $_POST. e • $_SERVEUR[] : contient les cl´s et les valeurs de toutes les variables d´clar´es e e e dans les fichiers de configuration de PHP. • $_SESSION[] : contient les cl´s et les valeurs de la session courante (voir e section 5 de ce document). e • $GLOBALS[] : contient toutes les variables globales associ´es au script PHP courant. Notons que leur nom ob´it a deux r`gles : e ` e • Il est constitu´ uniquement de majuscules. e • Il est pr´fix´ par un signe de soulignement (underscore), la variable $GLOBALS e e except´e. e ` A titre d’exemple, vous pouvez afficher l’adresse et le nom du navigateur du client ` l’aides des variables superglobales suivantes : $_SERVER[’REMOTE_ADDR’] a et $_SERVER[’HTTP_USER_AGENT’]. De mˆme, vous testerez la fonctionphpinfo() e qui permet l’affichage des variables superglobales les plus importantes. 6
4
Cookies
La programmation en PHP a ceci de particulier que lorsqu’une page s’affiche dans le navigateur le programme est termin´. Un programme ´tant g´n´ralement e e e e constitu´ de plusieurs scripts la communication d’informations entre ces scripts e pose donc probl`me. Il existe plusieurs solutions, nous avons vu au cours pr´c´dent e e e comment utiliser la balise . Les cookies (gateaux en anglais) en stockant des informations sur le navigateur permettent aussi de r´pondre ` cette probl´matique. En PHP, la gestion des cookies se fait a l’aide e a e ` d’une seule fonction selon la syntaxe suivante : setcookie(nom,valeur), les autres param`tres ´tant facultatifs. e e Exemple : C’est ´galement avec la mˆme fonction que l’on efface un cookie : setcookie(nom). e e On passe le nom du cookie en param`tre mais sans aucune valeur. e Attention, la gestion des cookies au niveau du serveur se fait dans les en-tˆtes e HTTP envoy´s au client AVANT la page elle-mˆme. En cons´quence, cette fonction e e e ne peut ˆtre utilis´e qu’en haut de vos pages, avant tout contenu HTML et toute e e utilisation de la fonction echo(). Une fois un cookie enregistr´ sur le client, les informations qu’il contient seront e disponibles par le serveur au prochain chargement d’une page. PHP pourra donc ainsi acc´der `
...