Correction exercices les cookies en PHP : Série 01
Correction exercices les cookies en PHP : Série 01
- Correction application 02
-
Énoncé
- Vous pouvez visualiser l’énoncé de l’exercice
-
Solution
-
Page: index.php
-
Page: traitement.php
-
Exercice 01
-
Énoncé
- Vous pouvez visualiser l’énoncé de l’exercice
-
Solution
-
Exercice 02
-
Énoncé
- Vous pouvez visualiser l’énoncé de l’exercice
-
Solution
-
Exercice 03
-
Énoncé
- Vous pouvez visualiser l’énoncé de l’exercice
-
Solution
-
Exercice 04
-
Énoncé
- Vous pouvez visualiser l’énoncé de l’exercice
-
Solution
<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>
<?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.';
}
?>
<?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>
<?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>