Plusieurs skin

Plusieurs skin - PHP - Programmation

Marsh Posté le 20-11-2005 à 15:21:28    

Bonjour.
J'ai un site ( http://imperium.new.fr )où je propose plusieurs skin (ou layout je connais pas la différence ^^)
Et donc j'aimerais savoir comment fait-on pour que le skin choisit par un utilisateur reste à chaque connexion de celui-ci ?? ( voir : http://mugglenet.com )
Merci de répondre  :pt1cable:


---------------
http://www.imperiumhp.be
Reply

Marsh Posté le 20-11-2005 à 15:21:28   

Reply

Marsh Posté le 20-11-2005 à 16:05:04    

Par cookies ou, si l'utilisateur doit posséder un login, en enregistrant l'info dans une db.

Reply

Marsh Posté le 20-11-2005 à 20:42:34    

//-------------------------------------------------------------------------------------------
//- un exemple par cookie
//--------------------------------------------------------------------------------------------  
 
// definition du skin utilisateur
 if(isset($_POST['style']))
 // On vérifie que le formulaire a été soumis
 {
  if(file_exists("./style/".$_POST['style'].".css" ))
  {
   // On fait un cookie d'une année de durée pour garder en mémoire le style choisi et le récupérer à la prochaine visite
   setcookie('style', $_POST['style'], time()+(365*24*3600)) ;
   // Si le fichier *.css existe on définit une variable $css correspondant au style choisi
   $css = $_POST['style'] ;
  }
 }
 elseif(isset($_COOKIE['style']))
 {  
  $css = $_COOKIE['style'] ;
 }  
 else
 {
  $css = "Style violet" ;
  setcookie('style', 'Style skin_1', time()+(365*24*3600)) ;
 }  
 
//-------------------------------------------------------------------------------
<form method="post" action="<?php $_SERVER['PHP_SELF'] ?>">
 
<table>
  <tr>
   <td>
    <select name="style">
 
    <!-- Affichage de toutes les feuilles de style presentent dans./sytle -->
 
    <? $dir = opendir("./style" );    
 
     while($file=readdir($dir))
     {
      if(!is_dir($file) AND $file!='.' AND $file!='..' AND $file !='' AND strstr($file,"." )==".css" )
      {
       $style= substr($file,0,strrpos($file,"." ));
       echo "<option value='$style'";
       echo ">$style</option>";
      }
     }
 
    ?>  
 
    </select>
   </td>
   <td><input name="change_style" type="submit" value="Ok"></td>
  </tr>
</table>
</form>

Reply

Marsh Posté le 15-12-2005 à 20:40:21    

Humm... Pas tut clair ds ma tete  :heink:  
Mais si je veux changer que la photo en fait, c'est obligé de faire un script aussi... développé ??


---------------
http://www.imperiumhp.be
Reply

Marsh Posté le 15-12-2005 à 23:35:09    

c'est pas "développé", c'est qu'il t'a tout mis (et il a bien fait):
- formulaire de sélection du style
- script de traitement du formulaire --> écriture du cookie
- si pas de formulaire validé, ni de cookie, sélection d'un style par défaut ("Style violet" dans son exemple)
 
de toute façon, t'a pas le choix, les 2 seules méthodes sont celle qu'il t'a cité:
- visiteur inconnu --> mémorisation par cookie (donc sur la machine du visiteur)
- utilisateur avec login --> mémorisation BDD, lorsque l'utilisateur se logue, tu récupère son style dans la BDD


---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 16-12-2005 à 19:52:15    

Soit ^^
Alors ca il faut le placer où ??


---------------
http://www.imperiumhp.be
Reply

Sujets relatifs:

Leave a Replay

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