Correction exercices les cookies en PHP : Série 01

Correction exercices les cookies en PHP : Série 01

  1. Correction application 02
    1. Énoncé
    2. Solution
      • Page: index.php
        • <html>
          <head>
          <title>Index du site</title>
          <body>
          <?php
          if (isset($_COOKIE['pseudo'])) {
           // si le cookie existe
          echo 'Bonjour '.$_COOKIE['pseudo'].' !';
          }
          else {
          echo 'Notre cookie n\'est pas déclaré.';
           // si le cookie n'existe pas, on affiche un formulaire permettant
          // au visiteur de saisir son nom
          echo '<form action="./traitement.php" method="post">';
          echo 'Votre nom : <input type = "texte" name = "nom"><br />';
          echo '<input type = "submit" value = "Envoyer">';
          echo '</form>';
          }
          ?>
          </body>
          </html>
      • Page: traitement.php
        • <?php
          If (isset($_POST['nom'])) {
          $temps = 365*24*3600;
          // on envoie un cookie de nom pseudo portant la valeur de la variable $nom,
          //c'est-à-dire la valeur qu'a saisie la personne qui a rempli le formulaire
          setcookie ("pseudo", $_POST['nom'], time() + $temps);
          // fonction nous permettant de faire des redirections
          function redirection($url){
          if (headers_sent()){
          print('<meta http-equiv="refresh" content="0;URL='.$url.'">');
          }
          else {header("Location: $url");}
          }
          // on effectue une redirection vers la page d'accueil
          redirection ('index.php');
          }
          else {
          echo 'La variable du formulaire n\'est pas déclarée.';
          }
          ?>
  2. Exercice 01

    1. Énoncé
    2. Solution
      • <?php
        if(isset($_POST['textes']) 
        and $_POST['textes']=="ok")
        {
            setcookie("couleurFond");
            setcookie("couleurTexte");
            echo "supprimée"; 
        }
        if(!isset($_COOKIE['couleurFond']) 
        AND !isset($_COOKIE['couleurTexte']) )
        {
        $fond=$_POST['selectFond'];
        $texte=$_POST['selectTexte'];
        $expir=time() + 2*30*24*3600;
        setcookie("couleurFond",$fond,$expir);
        setcookie("couleurTexte",$texte,$expir);
        echo "crée";
        }
        else
        {
        $fond=$_COOKIE['couleurFond'];
        $texte=$_COOKIE['couleurTexte'];
        echo "non crée";
        }
        ?>
        <!DOCTYPE html >
        <html>
        <head>
        <title>Couleurs avec cookie</title>
        <style type="text/css" >
        body{background-color: <?php echo $fond; ?>;
         color: <?php echo $texte; ?>;}
            legend{font-weight:bold;font-family:cursive;}
        	label{font-weight:bold;font-style:italic;}
        </style>
        </head>
        <body>
        <form method="post" action="#">
        <fieldset>
        <legend>Choisissez vos couleurs</legend>
        <label>Couleur de fond
        <select  name="selectFond">
        <option>white</option>
        <option>blue</option>
        <option>yellow</option>
        <option>red</option>
        <option>green</option>
        </select>
        </label><br /><br />
        <label>Couleur de texte
        <select  name="selectTexte">
        <option>black</option>
        <option>blue</option>
        <option>yellow</option>
        <option>red</option>
        <option>green</option>
        </select>
        <input type="hidden" name="textes" id="textes" />
        </label><br /><br /><br />
        <input type="submit" value="Changer les couleurs" />  
        <input type="submit" value="Effacer les couleurs"
         onclick="document.getElementById('textes').value = 'ok'" />
        </fieldset>
        </form>
        </body>
        </html>
        	



  3. Exercice 02

    1. Énoncé
    2. Solution
      • <?php
        if(!isset($_COOKIE['couleur']['fond']) AND
        !isset($_COOKIE['couleur']['texte']) )
        {
        $fond=$_POST['fond'];
        $texte=$_POST['texte'];
        $expir=time() + 10;
        setcookie("couleur[fond]",$fond,$expir);
        setcookie("couleur[texte]",$texte,$expir);
        }
        else
        {
        $fond=$_COOKIE['couleur']['fond'];
        $texte=$_COOKIE['couleur']['texte'];
        }
        ?>
        <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
        <html>
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <title>Couleurs du site</title>
        <style type="text/css" >
        body{background-color:  ; color:  ;}
        legend{font-weight:bold;font-family:cursive;}
        label{font-weight:bold;font-style:italic;}
        </style>
        </head>
        <body>
        <form method="post" action="ch12exo2.php">
        <fieldset>
        <legend>Choisissez vos couleurs</legend>
        <label>Couleur de fond
        <input type="text" name="fond" />
        </label><br /><br />
        <label>Couleur de texte
        <input type="text" name="texte" />
        </label><br />
        <input type="submit" value="Envoyer" />  
        <input type="reset" value="Effacer" />
        </fieldset>
        </form>
        </body>
        </html>
  4. Exercice 03

    1. Énoncé
    2. Solution
  5. Exercice 04

    1. Énoncé
    2. Solution



Laisser un commentaire