Introduction au langage PHP M. Marouan OMEZZINE Elève ingénieur JuniorENSI & E.N.S.I. http://www.junior-ensi.org http://ww...
Plan <ul><li>Les formulaires (Rappel HTML) </li></ul><ul><li>Manipulation des formulaires en PHP </li></ul><ul><li>Les ses...
Les formulaires (Rappel HTML)
Pourquoi un formulaire ? Réf : http://www.commentcamarche.net/html/htmlform.php3 Les formulaires interactifs permettent au...
La balise  FORM Les formulaires sont délimités par la balise  <FORM> ... </FORM>. Cette balise qui permet de regrouper plu...
La balise  FORM 1 – L’attribut : METHOD METHOD  indique sous quelle forme seront envoyées les réponses «  POST  » est la v...
La balise  FORM 2 – L’attribut : ACTION 3 – L’attribut : ENCTYPE  (optionnel) ACTION  indique l'adresse d'envoi (script CG...
Les éléments de formulaires <ul><li>Les éléments de formulaires sont répartis en 3 classes : </li></ul><ul><li>INPUT Champ...
Les éléments INPUT Type Syntaxe Exemple sans <input  name =&quot;ident&quot; > <input  name =&quot;ident&quot;  value =&qu...
Les éléments INPUT Type Syntaxe Exemple radio <input  type =&quot; radio &quot;  name =&quot;media&quot;  value =&quot;cd&...
L'élément SELECT Syntaxe Exemple <select  name =&quot;menu&quot; > <option>  Banane <option>  Orange <option >  Citron <op...
L'élément TEXTAREA <textarea  name =&quot;comm&quot;  rows =10  cols =40 > Tapez vos commentaires ici </textarea>
Manipulation des formulaires en PHP
Manipulation des formulaires en PHP <ul><li>Les informations  entrées  dans un formulaire sont  récupérées  sous forme de ...
Exemple 1 <ul><li>Deux page : </li></ul><ul><li>identif.html : contient le formulaire (HTML). </li></ul><ul><li>verif.php ...
identif.html <html><body>  <h4> identification </h4>  <form  action = &quot; verif.php&quot;  method =&quot;post&quot;>  L...
process.php <?php if ( $_POST[ &quot;login&quot; ]   == &quot;moi&quot;  &&  $_POST[ &quot;password&quot; ]   == &quot;mar...
Exemple 2 <ul><li>Deux page : </li></ul><ul><li>formulaire.html : contient le formulaire (HTML). </li></ul><ul><li>process...
formulaire.html <html><body>  <h4> Tizag Art Supply Order Form </h4>  <form  action =&quot;process.php&quot;  method =&quo...
process.php Exemple d’exécution : You ordered 6 brushes.  Thank you for ordering from Junior Art Supplies!  <html><body> <...
Fonctions utiles <ul><li>isset() : teste l’existence d’une variable  ( savoir si une variable a été définie ou non). </li>...
Les sessions
Les sessions <ul><li>Le support des sessions en PHP est un moyen de  préserver  des données,  relatives  au visiteur,  ent...
Pourquoi utiliser les sessions ? <ul><li>Pour conserver de page en page les valeurs de certaines variables. </li></ul><ul>...
Démarrer une session Syntaxe  La session doit être déclarée dans le code  tout en haut  de votre page car le cache du navi...
Créer une variable de session Syntaxe  <?php  $_SESSION[ ' variable ' ]  = $valeur ; ?>  Les variables de sessions sont ac...
Utiliser la valeur d’une variable de session Exemple <?php  if ( isset( $_SESSION[' ensi '] ) ) echo   'La variable &quot;...
Supprimer une variable de session Syntaxe  <?php  unset ($_SESSION[ ' variable ' ] ) ; echo   'La variable de session &quo...
Détruire toutes les variables de session Syntaxe  Détruire une session Syntaxe  <?php  session_unset() ; ?>  <?php  sessio...
Les cookies
Qu'est-ce qu'un cookie ? Pour explorer le répertoire cookies sous votre machine Windows ; faites  Démarrer / Exécuter  et ...
Démarrer une session Syntaxe  La fonction  setcookie()  doit être placé avant tout code HTML, car le cache du navigateur d...
Exemple 1 L'exemple ci-dessous génère un cookie appelé &quot; nom_cookie &quot;, avec pour contenu &quot;Léon&quot; et pen...
Comment retrouver la valeur d'un cookie L'exemple ci-dessous test l'existence d'un cookie apelé &quot; nom_cookie &quot; e...
Afficher tous les cookies Syntaxe  <?php print_r( $_COOKIE ) ; ?>
Remarque  Session Vs Cookie La différence entre les sessions et les cookies est que les cookies sont stockés sur le poste ...
Références <ul><li>http://www.snv.jussieu.fr/archambault/cours/html/textes/forms.html </li></ul><ul><li>http://www.php.net...
Contact <ul><li>Email / msn  : marouan.omezzine@hotmail.com </li></ul><ul><li>Skype  : marouan.omezzzine </li></ul><ul><li...
Questions ?
Prochain SlideShare
Chargement dans…5
×

Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE

7 352 vues

Publié le

Une introduction / ébauche au langage PHP (Manipulation des formulaires, sessions et cookies) faite dans le cadre des formations inter-membres du club Junior ENSI (http://www.junior-ensi.org/) de l'école nationale des sciences de l'informatique (http://www.ensi.rnu.tn/).

Publié dans : Technologie
7 commentaires
2 j’aime
Statistiques
Remarques
Aucun téléchargement
Vues
Nombre de vues
7 352
Sur SlideShare
0
Issues des intégrations
0
Intégrations
115
Actions
Partages
0
Téléchargements
257
Commentaires
7
J’aime
2
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • Marouan OMEZZINE &amp; JuniorEnsi
  • Introduction au langage PHP (2éme partie) élaborée par Marouan OMEZZINE

    1. 1. Introduction au langage PHP M. Marouan OMEZZINE Elève ingénieur JuniorENSI & E.N.S.I. http://www.junior-ensi.org http://www.slideshare.net/marouan.omezzine Version 1.1070208 Last update : 07-Fév-2008 Deuxième partie
    2. 2. Plan <ul><li>Les formulaires (Rappel HTML) </li></ul><ul><li>Manipulation des formulaires en PHP </li></ul><ul><li>Les sessions </li></ul><ul><li>Les cookies </li></ul>
    3. 3. Les formulaires (Rappel HTML)
    4. 4. Pourquoi un formulaire ? Réf : http://www.commentcamarche.net/html/htmlform.php3 Les formulaires interactifs permettent aux auteurs de pages Web de doter leur page web d'éléments interactifs permettant par exemple un dialogue avec les internaute, à la manière des coupons-réponse présents dans certains magazines.
    5. 5. La balise FORM Les formulaires sont délimités par la balise <FORM> ... </FORM>. Cette balise qui permet de regrouper plusieurs éléments de formulaire (boutons, champs de saisie,...) et qui possède les attributs obligatoires ACTION et METHOD .
    6. 6. La balise FORM 1 – L’attribut : METHOD METHOD indique sous quelle forme seront envoyées les réponses «  POST  » est la valeur qui correspond à un envoi de données stockées dans le corps de la requête , tandis que «  GET  » correspond à un envoi des données codées dans l'URL , et séparées de l'adresse du script par un « ? ». i.e. : www.monsite.com/index.php ? id=1 . Pour plus d’information sur la différence entre GET et POST: http://www.cs.tut.fi/~jkorpela/forms/methods.html
    7. 7. La balise FORM 2 – L’attribut : ACTION 3 – L’attribut : ENCTYPE (optionnel) ACTION indique l'adresse d'envoi (script CGI, script PHP … ou adresse email (mailto:adresse.email@machine)) ENCTYPE spécifie le format des données envoyées, dans le cas où un protocole n'imposerait pas de format précis. Il possède plusieurs valeurs dont : - &quot; text/plain &quot; : Valeur utilisée dans le cas d'un formulaire classique - &quot; multipart/form-data &quot; : Valeur utilisée dans le cas où le formulaire comprendrait un fichier attaché (<input type=&quot;file&quot; ...>)
    8. 8. Les éléments de formulaires <ul><li>Les éléments de formulaires sont répartis en 3 classes : </li></ul><ul><li>INPUT Champs de saisie de texte et différents types de boutons . </li></ul><ul><li>SELECT Listes (menus déroulants et ascenseurs) . </li></ul><ul><li>TEXTAREA Zone de saisie de texte libre. </li></ul>
    9. 9. Les éléments INPUT Type Syntaxe Exemple sans <input name =&quot;ident&quot; > <input name =&quot;ident&quot; value =&quot;Par défaut&quot; > submit <input type = &quot; submit &quot; value =&quot;Envoi&quot; > checkbox <input type = &quot; checkbox &quot; name =&quot;pfm&quot; value =&quot;linux&quot; checked > Linux <BR> <input type = &quot; checkbox &quot; name =&quot;pfm&quot; value =&quot;dos&quot; > Dos <BR> <input type = &quot; checkbox&quot; name =&quot;pfm&quot; value =&quot;win&quot; > Windows
    10. 10. Les éléments INPUT Type Syntaxe Exemple radio <input type =&quot; radio &quot; name =&quot;media&quot; value =&quot;cd&quot; checked > CD-ROM <BR> <input type =&quot; radio &quot; name =&quot;media&quot; value =&quot;dk&quot;> Disquette password <input type =&quot; password &quot; name =&quot;pass&quot; > reset <input type =&quot; reset &quot; value =&quot;Efface&quot; > file <input type =&quot; file &quot; name =&quot; file &quot; />
    11. 11. L'élément SELECT Syntaxe Exemple <select name =&quot;menu&quot; > <option> Banane <option> Orange <option > Citron <option selected > Pomme <option> Pêche <option> Poire <select > <select name =&quot;menu&quot; size =4> ... <select name =&quot;menu&quot; size =4 multiple > ...
    12. 12. L'élément TEXTAREA <textarea name =&quot;comm&quot; rows =10 cols =40 > Tapez vos commentaires ici </textarea>
    13. 13. Manipulation des formulaires en PHP
    14. 14. Manipulation des formulaires en PHP <ul><li>Les informations entrées dans un formulaire sont récupérées sous forme de variables. </li></ul><ul><li>Le nom de ces variables dépend de la méthode d'envoi du formulaire. </li></ul>Exemple : si la méthode d'envoi est POST , il faut mettre comme nom de variabale $_POST['nom_du_champ'] (idem pour GET).
    15. 15. Exemple 1 <ul><li>Deux page : </li></ul><ul><li>identif.html : contient le formulaire (HTML). </li></ul><ul><li>verif.php : contient le code PHP pour vérifier si login est bien « moi » et le password est « marouan ». </li></ul>
    16. 16. identif.html <html><body> <h4> identification </h4> <form action = &quot; verif.php&quot; method =&quot;post&quot;> Login :<input type =&quot;text&quot; name = &quot; login&quot; /> <br> Password :<input type = &quot;password&quot; name = &quot; password&quot; /><br> <input type = &quot;reset&quot; value = &quot; clear&quot; /> <input type =&quot;submit&quot; /> </form> </body></html>
    17. 17. process.php <?php if ( $_POST[ &quot;login&quot; ] == &quot;moi&quot; && $_POST[ &quot;password&quot; ] == &quot;marouan&quot; ) { echo &quot;All rights&quot;; } else header( &quot;location: identif.html&quot; ) ; /* Redirect browser */ ?>
    18. 18. Exemple 2 <ul><li>Deux page : </li></ul><ul><li>formulaire.html : contient le formulaire (HTML). </li></ul><ul><li>process.php : contient le code PHP qui va agir sur les données du formulaire. </li></ul>
    19. 19. formulaire.html <html><body> <h4> Tizag Art Supply Order Form </h4> <form action =&quot;process.php&quot; method =&quot;post&quot;> <select name =&quot;item&quot;> <option> Paint </option> <option> Brushes </option> <option> Erasers </option> </select> Quantity: <input name =&quot;quantity&quot; type =&quot;text&quot; /> <input type =&quot;submit&quot; /> </form> </body></html>
    20. 20. process.php Exemple d’exécution : You ordered 6 brushes. Thank you for ordering from Junior Art Supplies! <html><body> <?php $quantity = $_POST[' quantity ']; $item = $_POST[' item ']; echo &quot;You ordered &quot;. $quantity . &quot; &quot; . $item . &quot;. <br /> &quot;; echo &quot;Thank you for ordering from Junior Art Supplies!&quot;; ?> </body></html> $quantity = $_POST[' quantity ']; $item = $_POST[' item ']; extract ($_POST);
    21. 21. Fonctions utiles <ul><li>isset() : teste l’existence d’une variable ( savoir si une variable a été définie ou non). </li></ul><ul><li>is_empty() or empty() : indique qu’un champ d’un formulaire a été rempli ou non. </li></ul><ul><li>extract() : permet d'extraire les données d'un formulaire après validation. </li></ul>
    22. 22. Les sessions
    23. 23. Les sessions <ul><li>Le support des sessions en PHP est un moyen de préserver des données, relatives au visiteur, entre plusieurs accès . </li></ul><ul><li>Elles permettent de stocker des types de données simples (texte, nombres, …) mais pas de ressources comme des images ou bdd. </li></ul>
    24. 24. Pourquoi utiliser les sessions ? <ul><li>Pour conserver de page en page les valeurs de certaines variables. </li></ul><ul><li>Pour pister le parcours du visiteur. </li></ul><ul><li>Pour effectuer des statistiques fines en termes de visiteurs réels et pas en hits (nombre d'appel d'un fichier). </li></ul>
    25. 25. Démarrer une session Syntaxe La session doit être déclarée dans le code tout en haut de votre page car le cache du navigateur doit être vide pour démarrer une session. Donc aucun code HTML avant le démarrage d'une session !! <?php session_start() ; ?> Ce code permet de démarrer une session . Si un fichier existe sur le serveur pour cette session, les variables de sessions seront récupérées , si ce n’est pas le cas, un nouveau fichier sera créé.
    26. 26. Créer une variable de session Syntaxe <?php $_SESSION[ ' variable ' ] = $valeur ; ?> Les variables de sessions sont accessibles, une fois que la sessions est démarrée, via un tableau super global : $_SESSION Nous créons ici une variable de session nommée variable qui vaut $valeur .
    27. 27. Utiliser la valeur d’une variable de session Exemple <?php if ( isset( $_SESSION[' ensi '] ) ) echo 'La variable &quot;ensi&quot; existe et vaut: ' . $_SESSION[' ensi '] ; ?> isset() permet de savoir si la variable de session « ensi » existe ou non.
    28. 28. Supprimer une variable de session Syntaxe <?php unset ($_SESSION[ ' variable ' ] ) ; echo 'La variable de session &quot;variable&quot; est maintenant détruite'; ?> unset() permet de supprimer une variable de session.
    29. 29. Détruire toutes les variables de session Syntaxe Détruire une session Syntaxe <?php session_unset() ; ?> <?php session_destroy() ; ?>
    30. 30. Les cookies
    31. 31. Qu'est-ce qu'un cookie ? Pour explorer le répertoire cookies sous votre machine Windows ; faites Démarrer / Exécuter et taper Cookies . Un cookie est un fichier que le serveur envoi sur la machine de l'utilisateur . Il est souvent utilisé pour reconnaitre les utilisateurs .
    32. 32. Démarrer une session Syntaxe La fonction setcookie() doit être placé avant tout code HTML, car le cache du navigateur doit être vide pour que cette fonction marche convenablement. <?php setcookie( name , value , expire , path , domain ) ; ?>
    33. 33. Exemple 1 L'exemple ci-dessous génère un cookie appelé &quot; nom_cookie &quot;, avec pour contenu &quot;Léon&quot; et pendant une période de 10 heures . <?php // génère le cookie $contenu = 'léon'; // le contenu de votre cookie setcookie( &quot;nom_cookie&quot;, $contenu, time()+ 36000 ) ; ?> <html> <body> <p> Un cookie a été généré sur cette page. </p> </body> </html>
    34. 34. Comment retrouver la valeur d'un cookie L'exemple ci-dessous test l'existence d'un cookie apelé &quot; nom_cookie &quot; et affiche si le cookie existe ou n'existe pas. <html> <body> <?php // test l'existance d'un cookie apelé &quot;nom_cookie&quot; if ( isset( $_COOKIE[ &quot;nom_cookie&quot; ] ) ) echo 'Le cookie existe ' . $_COOKIE[ &quot;nom_cookie&quot; ] . '! <br /> '; else echo 'Le cookie n'existe pas <br /> '; ?> </body>
    35. 35. Afficher tous les cookies Syntaxe <?php print_r( $_COOKIE ) ; ?>
    36. 36. Remarque Session Vs Cookie La différence entre les sessions et les cookies est que les cookies sont stockés sur le poste du visiteur tandis que les sessions sont dans des fichiers présents sur le serveur .
    37. 37. Références <ul><li>http://www.snv.jussieu.fr/archambault/cours/html/textes/forms.html </li></ul><ul><li>http://www.php.net/manual/fr/ref.session.php </li></ul><ul><li>http://www.phpsources.org/tutoriel-cookies.htm </li></ul><ul><li>http://www.phpsources.org/tutoriel-sessions.htm </li></ul><ul><li>http://cyberzoide.developpez.com/php4/faqsession/ </li></ul><ul><li>http://www.allhtml.com/articles/detail/370 </li></ul>
    38. 38. Contact <ul><li>Email / msn : marouan.omezzine@hotmail.com </li></ul><ul><li>Skype : marouan.omezzzine </li></ul><ul><li>Slides : http://www.slideshare.net/marouan.omezzine </li></ul>
    39. 39. Questions ?

    ×