Changer de style via les cookies

Changer de style via les cookies - PHP - Programmation

Marsh Posté le 11-02-2004 à 10:22:18    

J'ai cree deux styles dans ma page qui changent simplement le fond d'ecran.
Avec un menu déroulant j'invite l'utilisateur a choisir un style et il sera retenu dans un cookie pour sa prochaine visite.
Donc si il saisis le style fond noir par exemple, quand il reviendra sur le site il aura un fond noir !
 
J'ai une erreur php.. (sur un server mais sur MON server ca fonctionne nikel).
Comment regler mon erreur ?
 
Voici mon code de ma page php
 

Code :
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <title>Changement de style par cookie</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6. <?php
  7. if (isset($_GET['css']))
  8. {
  9. $style=$_GET['css'];
  10. setcookie("choix_css",$style,time()+10000);
  11. }
  12. else
  13. {
  14. if (isset($_COOKIE['choix_css']))
  15. {
  16. $style=$_COOKIE['choix_css'];
  17. }
  18. else
  19. {
  20. $style="style1.css";
  21. }
  22. }
  23. echo "<link href=\"style/".$style."\" rel=\"stylesheet\" type=\"text/css\" />";
  24. ?>
  25. </head>
  26. <body>
  27. <p> Cette page permet &agrave; l'utilisateur de personnaliser cette page. S&eacute;electionner via le menu déroulant un de vos style, lors de votre prochaine visite votre style sera enregistr&eacute; :-) Activez vos cookie..
  28. <form id="choix_style_css" action="index.php" method="get">
  29.   <select name="css">
  30.     <option value=""> Choisissez un css </option>
  31.     <option value="style1.css"> Sélectionner le css1 (fond gris) </option>
  32.     <option value="style2.css"> Sélectionner le css2 (fond jaune) </option>
  33.   </select>
  34.   <input type="submit" value="envoyer">
  35.   </input>
  36. </form>
  37. <?php
  38. if (isset($_COOKIE['choix_css']))
  39. {
  40. echo "Le cookie choisi est : ".$_COOKIE['choix_css'];
  41. echo"<br />";
  42. }
  43. else
  44. {
  45. echo "Aucun cookie d&eacute;tect&eacute;";
  46. }
  47. ?>
  48. </p>
  49. </body>
  50. </html>


 
Pour les styles c'est simplement un body background color..
 
 
l'erreur

Code :
  1. Warning: Cannot modify header information - headers already sent by (output started at /var/www/free.fr/6/0/olbi/php/08/index.php:6) in /var/www/free.fr/6/0/olbi/php/08/index.php on line 10


 
Merci de m'aider


Message édité par Dolby le 11-02-2004 à 10:35:43
Reply

Marsh Posté le 11-02-2004 à 10:22:18   

Reply

Marsh Posté le 11-02-2004 à 10:26:49    

Skoi l'erreur ?

Reply

Marsh Posté le 11-02-2004 à 10:35:59    

l'erreur :

Code :
  1. Warning: Cannot modify header information - headers already sent by (output started at /var/www/free.fr/6/0/olbi/php/08/index.php:6) in /var/www/free.fr/6/0/olbi/php/08/index.php on line 10

Reply

Marsh Posté le 11-02-2004 à 10:49:32    

Ok.
Crée un nouveau bloc <?php ?> au tout début de ta page (même pas un espace) et met ce code dedans:
 

Citation :


if (isset($_GET['css']))  
{  
$style=$_GET['css'];  
setcookie("choix_css",$style,time()+10000);  
}  
else  
{  
 if (isset($_COOKIE['choix_css']))  
 {  
 $style=$_COOKIE['choix_css'];  
 }  
 else  
 {  
 $style="style1.css";  
 }  
}


 
Dans le 2ème bloc tu laisses que le echo '<link...'


Message édité par kfman le 11-02-2004 à 10:51:40
Reply

Marsh Posté le 11-02-2004 à 10:55:02    

excellent ca marche, merci bc !
 


Message édité par Dolby le 11-02-2004 à 10:55:50
Reply

Marsh Posté le 11-02-2004 à 10:56:36    

Dolby a écrit :

excellent ca marche, merci bc !
 


 
De rien mon minet: 50 ? :o

Reply

Marsh Posté le 11-02-2004 à 10:58:30    

allez va, une bonne biere et ca ira :)

Reply

Marsh Posté le 11-02-2004 à 11:13:45    

[:meganne]

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed