website logo
Auteur
avatar
skippy

Forum » » Le coin des codeurs » » [Résolu] - changer de thème même en anonyme


Posté : 26 janv. 2010 à 13:34 icone du post

salut,

j'essaie sur le Labo à thèmes pour NPDS, j'aimerai faire en sorte que mêmes les anonymes puissent tester les thèmes.

Est-ce que npds génère un cookies "anonyme" ?

dans la fonction j'ai ceci :



function chgtheme() {
    global $user;

    $userinfo=getusrinfo($user);
    opentable();
    echo "<table width=\"100%\" cellspacing=\"2\" cellpadding=\"2\" border=\"0\"><tr><td class=\"header\">\n";
    echo translate("Select One Theme");
    echo "</td></tr></table>\n";
    echo "<p align=\"center\"><form action=\"user.php\" method=\"post\">
          <select class=\"textbox_standard\" name=\"theme\">";
    !include!("themes/list.php");
    $themelist = explode(" ", $themelist);
    for ($i=0; $i < sizeof($themelist); $i++) {
       if ($themelist[$i]!="") {
          echo "<option value=\"$themelist[$i]\" ";
          if ((($userinfo[theme]=="") && ($themelist[$i]=="$Default_Theme")) || ($userinfo[theme]==$themelist[$i])) echo "selected=\"selected\"";
             echo ">$themelist[$i]\n";
          }
    }
    if ($userinfo[theme]=="") $userinfo[theme] = "Default_Theme";

    echo "<input type=\"hidden\" name=\"uname\" value=\"$userinfo[uname]\" />
          <input type=\"hidden\" name=\"uid\" value=\"$userinfo[uid]\" />
          <input type=\"hidden\" name=\"op\" value=\"savetheme\" />
          <p></p>
          <input class=\"bouton_standard\" type=\"submit\" value=\"".translate("Save Changes!")."\" />
          </form>";
    closetable();

}
function savetheme($uid, $theme) {
    global $NPDS_Prefix;
    global $user;
    $cookie=cookiedecode($user);
    $check = $cookie[1];
    $result = sql_query("select uid from ".$NPDS_Prefix."users where uname='$check'");
    list($vuid) = sql_fetch_row($result);
    if ($uid == $vuid) {
        sql_query("update ".$NPDS_Prefix."users set theme='$theme' where uid='$uid'");
        $userinfo=getusrinfo($user);
        docookie($userinfo[uid],$userinfo[uname],$userinfo[pass],$userinfo[storynum],$userinfo[umode],$userinfo[uorder],$userinfo[thold],$userinfo[noscore],$userinfo[ublockon],$userinfo[theme],$userinfo[commentmax], "");
        // !include! cache manager for purge cache Page
        $cache_obj = new cacheManager();
        $cache_obj->UsercacheCleanup();
        Header("Location: user.php");
    } else {
       Header("Location: index.php");
    }
}


switch ($op) {
    case "chgtheme":
         if ($user)
            chgtheme();
         else
            Header("Location: index.php");
         break;
    case "savetheme":
         savetheme($uid, $theme);
         break;
}
?>



J'avoue être un peu perdu. Si quelqu'un pourrait m'aider à mettre ce système en place ça serait

A tut

Cet article provient de NPDS
https://www.npds.org/viewtopic.php?topic=24683&forum=5