Posté : 26-01-2010 13:34
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%\" cellspa cing=\"2\" cellpadding=\"2\" border=\"0\"><tr><td cl ass=\"header\">\n";
echo translate("Select One Theme");
echo "</td></tr></table>\n";
< br /> echo "<p align=\"center\"><form&nb sp;action=\"user.php\" method=\"post\">
<select c lass=\"textbox_standard\" name=\"theme\">";
!include!("themes/list.php");
$themelist = explode(" ", $themel ist);
for ($i=0; $i < sizeof($themel ist); $i++) {
if ($themelist[$i]!="") {
echo "<op tion value=\"$themelist[$i]\" ";
if ((($useri nfo[theme]=="") && ($themelist[$i]=="$Default_Theme")) | | ($userinfo[theme]==$themelist[$i])) echo "selected=\"selected\ "";
  ;echo ">$themelist[$i]\n";
}
}
if ($userinfo[theme]=="") $userinfo[theme]& nbsp;= "Default_Theme";
echo "<input type=\"hidden\" name=\ "uname\" value=\"$userinfo[uname]\" />
<input ty pe=\"hidden\" name=\"uid\" value=\"$userinfo[uid]\" />
<input ty pe=\"hidden\" name=\"op\" value=\"savetheme\" />
<p></p&g t;
<input cl ass=\"bouton_standard\" type=\"submit\" value=\"".translate("Save&nbs p;Changes!")."\" />
</form>";
< br /> closetable();
}
function savetheme($uid, $theme) {
global $NPDS_Prefix;
global $user;
$cookie=cookiedecode($user);
$check = $cookie[1];
$result = sql_query("select uid f rom ".$NPDS_Prefix."users where uname='$check'");
list($vuid) = sql_fetch_row($result);
if ($uid == $vuid) {
sql_query("update ".$NPD S_Prefix."users set theme='$theme' where uid='$uid'");
$userinfo=getusrinfo($user);
docookie($userinfo[uid],$user info[uname],$userinfo[pass],$userinfo[storynum],$userinfo[umode],$userinfo[uord er],$userinfo[thold],$userinfo[noscore],$userinfo[ublockon],$userinfo[theme],$u serinfo[commentmax], "");
// !include! cache& nbsp;manager for purge cache Page
$cache_obj = new&nb sp;cacheManager();
$cache_obj->UsercacheClean up();
Header("Location: user.p hp");
} else {
Header("Location: index.php");
}
}
switch ($op) {
case "chgtheme":
if ($user)
chgth eme();
else
Heade r("Location: index.php");
break;
case "savetheme":
savetheme($uid, $t heme);
break;
}
?>
J'avoue être un peu perdu. Si quelqu'un pourrait m'aider à mettre ce système en place ça serait
A tut |