SlideShare une entreprise Scribd logo
1  sur  39
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
Plan ,[object Object],[object Object],[object Object],[object Object]
Les formulaires (Rappel HTML)
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.
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 .
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
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; ...>)
Les éléments de formulaires ,[object Object],[object Object],[object Object],[object Object]
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
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; />
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 > ...
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 ,[object Object],[object Object],Exemple :  si la méthode d'envoi est  POST , il faut mettre comme nom de variabale  $_POST['nom_du_champ']  (idem pour GET).
Exemple 1 ,[object Object],[object Object],[object Object]
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>
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 */   ?>
Exemple 2 ,[object Object],[object Object],[object Object]
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>
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);
Fonctions utiles ,[object Object],[object Object],[object Object]
Les sessions
Les sessions ,[object Object],[object Object]
Pourquoi utiliser les sessions ? ,[object Object],[object Object],[object Object]
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éé.
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 .
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.
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.
Détruire toutes les variables de session Syntaxe  Détruire une session Syntaxe  <?php  session_unset() ; ?>  <?php  session_destroy() ; ?>
Les cookies
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 .
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 ) ; ?>
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>
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 napos;existe pas  <br /> '; ?> </body>
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 du visiteur tandis que  les sessions sont dans des fichiers présents sur le serveur .
Références ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Contact ,[object Object],[object Object],[object Object]
Questions ?

Contenu connexe

Tendances

PHP (Partie II) Par Mahdi Ben Alaya
PHP (Partie II) Par Mahdi Ben AlayaPHP (Partie II) Par Mahdi Ben Alaya
PHP (Partie II) Par Mahdi Ben AlayaMahdi Ben Alaya
 
Programmation web cours php -- sahmi academy
Programmation web   cours php -- sahmi academyProgrammation web   cours php -- sahmi academy
Programmation web cours php -- sahmi academySoufiane SAHMI
 
Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPjulien pauli
 
Bases de PHP - Partie 1
Bases de PHP - Partie 1Bases de PHP - Partie 1
Bases de PHP - Partie 1Régis Lutter
 
PHP #1 : introduction
PHP #1 : introductionPHP #1 : introduction
PHP #1 : introductionJean Michel
 
PHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautésPHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautésDidcode
 
PHP 7 et Symfony 3
PHP 7 et Symfony 3PHP 7 et Symfony 3
PHP 7 et Symfony 3Eddy RICHARD
 
Trucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQLTrucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQLDamien Seguy
 
La référence Clear php
La référence Clear phpLa référence Clear php
La référence Clear phpDamien Seguy
 
Java 5, un blian
Java 5, un blianJava 5, un blian
Java 5, un bliantareq
 

Tendances (19)

PHP (Partie II) Par Mahdi Ben Alaya
PHP (Partie II) Par Mahdi Ben AlayaPHP (Partie II) Par Mahdi Ben Alaya
PHP (Partie II) Par Mahdi Ben Alaya
 
Programmation web cours php -- sahmi academy
Programmation web   cours php -- sahmi academyProgrammation web   cours php -- sahmi academy
Programmation web cours php -- sahmi academy
 
Nouveautés php 7
Nouveautés php 7Nouveautés php 7
Nouveautés php 7
 
Communications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHPCommunications Réseaux et HTTP avec PHP
Communications Réseaux et HTTP avec PHP
 
Bases de PHP - Partie 1
Bases de PHP - Partie 1Bases de PHP - Partie 1
Bases de PHP - Partie 1
 
Php seance1
Php seance1Php seance1
Php seance1
 
PHP #1 : introduction
PHP #1 : introductionPHP #1 : introduction
PHP #1 : introduction
 
Cours Php
Cours PhpCours Php
Cours Php
 
PHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautésPHP 7.0 : aperçu des nouveautés
PHP 7.0 : aperçu des nouveautés
 
Php
PhpPhp
Php
 
PHP 7 et Symfony 3
PHP 7 et Symfony 3PHP 7 et Symfony 3
PHP 7 et Symfony 3
 
Php cours
Php coursPhp cours
Php cours
 
Trucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQLTrucs et astuces PHP et MySQL
Trucs et astuces PHP et MySQL
 
La référence Clear php
La référence Clear phpLa référence Clear php
La référence Clear php
 
La première partie de la présentation PHP
La première partie de la présentation PHPLa première partie de la présentation PHP
La première partie de la présentation PHP
 
Php & My Sql
Php & My SqlPhp & My Sql
Php & My Sql
 
Introduction à PHP
Introduction à PHPIntroduction à PHP
Introduction à PHP
 
Initiation au langage PHP
Initiation au langage PHPInitiation au langage PHP
Initiation au langage PHP
 
Java 5, un blian
Java 5, un blianJava 5, un blian
Java 5, un blian
 

En vedette

SMX West 2013 Presentation - Retargeting Best Practices
SMX West 2013 Presentation - Retargeting Best PracticesSMX West 2013 Presentation - Retargeting Best Practices
SMX West 2013 Presentation - Retargeting Best PracticesLijo Joseph
 
Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...
Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...
Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...Bruno Guyot
 
Presentation on Internet Cookies
Presentation on Internet CookiesPresentation on Internet Cookies
Presentation on Internet CookiesRitika Barethia
 
Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?
Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?
Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?DataPerformanceSummit
 
OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...
OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...
OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...Patrick Leclerc
 

En vedette (6)

SMX West 2013 Presentation - Retargeting Best Practices
SMX West 2013 Presentation - Retargeting Best PracticesSMX West 2013 Presentation - Retargeting Best Practices
SMX West 2013 Presentation - Retargeting Best Practices
 
Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...
Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...
Mise en place du suivi multi appareil Google Analytics pour Prestashop avec G...
 
Cookie and session
Cookie and sessionCookie and session
Cookie and session
 
Presentation on Internet Cookies
Presentation on Internet CookiesPresentation on Internet Cookies
Presentation on Internet Cookies
 
Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?
Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?
Cookie/Cookiless/multi channels : parle-t-on aux mêmes utilisateurs ?
 
OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...
OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...
OWASP Québec - Attaques et techniques de défense des sessions Web - par Louis...
 

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

Jump Camp - HTML5
Jump Camp - HTML5Jump Camp - HTML5
Jump Camp - HTML5chaudavid
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantHugo Hamon
 
Structurer ses travaux SAS à l'aide de pages HTML, Joël Rivest
Structurer ses travaux SAS à l'aide de  pages HTML, Joël RivestStructurer ses travaux SAS à l'aide de  pages HTML, Joël Rivest
Structurer ses travaux SAS à l'aide de pages HTML, Joël Rivestsasreference
 
Rest pour l'interopérabilité
Rest pour l'interopérabilitéRest pour l'interopérabilité
Rest pour l'interopérabilitépeportier
 
IPW 2eme course - HTML
IPW 2eme course - HTMLIPW 2eme course - HTML
IPW 2eme course - HTMLVlad Posea
 
RDFa, comment insuffler un peu d'intelligence à une page Web ?
RDFa, comment insuffler un peu d'intelligence à une page Web ?RDFa, comment insuffler un peu d'intelligence à une page Web ?
RDFa, comment insuffler un peu d'intelligence à une page Web ?Antidot
 
Site Web Centrale Eco
Site Web   Centrale EcoSite Web   Centrale Eco
Site Web Centrale Ecom.dubucq
 
Publication de documents sur le Web
Publication de documents sur le WebPublication de documents sur le Web
Publication de documents sur le WebSaïd Radhouani
 
Presentation Spring, Spring MVC
Presentation Spring, Spring MVCPresentation Spring, Spring MVC
Presentation Spring, Spring MVCNathaniel Richand
 

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

Jump Camp - HTML5
Jump Camp - HTML5Jump Camp - HTML5
Jump Camp - HTML5
 
Documents intéractifs
Documents intéractifsDocuments intéractifs
Documents intéractifs
 
JsPhDDefense
JsPhDDefenseJsPhDDefense
JsPhDDefense
 
Atelier template
Atelier templateAtelier template
Atelier template
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 Performant
 
Structurer ses travaux SAS à l'aide de pages HTML, Joël Rivest
Structurer ses travaux SAS à l'aide de  pages HTML, Joël RivestStructurer ses travaux SAS à l'aide de  pages HTML, Joël Rivest
Structurer ses travaux SAS à l'aide de pages HTML, Joël Rivest
 
Cours Php
Cours PhpCours Php
Cours Php
 
Rest pour l'interopérabilité
Rest pour l'interopérabilitéRest pour l'interopérabilité
Rest pour l'interopérabilité
 
IPW 2eme course - HTML
IPW 2eme course - HTMLIPW 2eme course - HTML
IPW 2eme course - HTML
 
RDFa, comment insuffler un peu d'intelligence à une page Web ?
RDFa, comment insuffler un peu d'intelligence à une page Web ?RDFa, comment insuffler un peu d'intelligence à une page Web ?
RDFa, comment insuffler un peu d'intelligence à une page Web ?
 
Site Web Centrale Eco
Site Web   Centrale EcoSite Web   Centrale Eco
Site Web Centrale Eco
 
Crs javascript
Crs javascriptCrs javascript
Crs javascript
 
Spring 3.0
Spring 3.0Spring 3.0
Spring 3.0
 
Publication de documents sur le Web
Publication de documents sur le WebPublication de documents sur le Web
Publication de documents sur le Web
 
Html5 bonnes-pratiques
Html5 bonnes-pratiquesHtml5 bonnes-pratiques
Html5 bonnes-pratiques
 
Paris Web
Paris WebParis Web
Paris Web
 
Formulaires
FormulairesFormulaires
Formulaires
 
Presentation Spring, Spring MVC
Presentation Spring, Spring MVCPresentation Spring, Spring MVC
Presentation Spring, Spring MVC
 
Association 2 0
Association 2 0Association 2 0
Association 2 0
 
Frameset
FramesetFrameset
Frameset
 

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

  • 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.
  • 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. 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. 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. 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.
  • 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. 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. 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. L'élément TEXTAREA <textarea name =&quot;comm&quot; rows =10 cols =40 > Tapez vos commentaires ici </textarea>
  • 14.
  • 15.
  • 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. 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.
  • 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. 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.
  • 23.
  • 24.
  • 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. 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. 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. 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. Détruire toutes les variables de session Syntaxe Détruire une session Syntaxe <?php session_unset() ; ?> <?php session_destroy() ; ?>
  • 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. 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. 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. 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 napos;existe pas <br /> '; ?> </body>
  • 35. Afficher tous les cookies Syntaxe <?php print_r( $_COOKIE ) ; ?>
  • 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.
  • 38.

Notes de l'éditeur

  1. Marouan OMEZZINE &amp; JuniorEnsi