
|
|
Auteur
|
Message
|
1
|
|
|
|
Bonjour a tous !
j'ai un petit site en php, avec un espace membre entre autre et j'aimerais ajouter une variable points a chaque membre
j'ai ajouté dans la table users un champ points ( INT(11) ) et j'ai meme ajouté une table points
cependant je n'arrive absolument pas a faire apparaitre le nombre de points d'un membre quand il se connecte
( je sais afficher son pseudo avec $user[2] )
merci d'avance pour votre aide
|
|
|
|
|
|
pourrait on avoir votre code?
|
|
|
|
|
voici le code ( c'est un site nukedklan que je modifie a ma guise ) :
{
$blok['content'] = "<div style=\"text-align: center;\">" . _WELCOME . ", <b>" . $user[2] . "</b><br /><br />\n" . "<div style=\"text-align: center;\">" . _VOUSAVEZ." <b>" . $user[13] . " points</b><br /><br />\n"
. "<a href=\"index.php?file=User\">" . _ACCOUNT . "</a> / <a href=\"index.php?file=User&nuked_nude=index&op=logout\">" . _LOGOUT . "</a></div>\n";
}
-->Message édité par yopmail le 19/02/2008 11:29:41<--
|
|
|
|
|
$user[13] c'est la variable contenant les points?
si ça ne s'affiche pas, vérifiez que la requette sélectionne bien le champ de votre base de donnée
|
|
|
|
|
non cela ne l'affiche pas malheuresement, comment vérifier ma requete s'il vous plait ?
Merci
|
|
|
|
|
je en sais pas du tout comment est articulé nukedclan
je viens de regarder le code, je suppose que vous avez ajouté le champ dans nuke_users ?
et pouvez vous me dire dans quelle page vous avez modifié le code? (quel fichier) car j'ai beau fouiller je ne vois rien qui correspond
|
|
|
|
|
bonjour
oui j'ai ajouté un champ points dans nuke_users et j'ai meme ajouté une table points dans la base de donnée
le fichier modifié : includes/blocks/block_login.php
Merci beaucoup
|
|
|
|
|
|
c'est bien la version 8.0 de php-nuke?
|
|
|
|
|
http://www.nuked-klan.org/index.php?file=Download&op=description&dl_i(...)
nuked_klan_sp43
c'est cette version que j'ai
merci beaucoup pour votre aide
|
|
|
|
|
re bonjour
j'ai un peu avancé dans la réalisation de mon projet, j'ai ajouté donc un champ points a la table users, cependant j'ai un probléme voici le code :
mysql_connect("localhost", "login", "motdepasse");
mysql_select_db("nomdedb");
$points = mysql_query ("SELECT points from users where pseudo='admin'");
echo $points;
echo "test";
j'ai inséré ce code a une page, et voila ce qui s'affiche :
Resource id #49test
une idée pour résoudre ce probléme ?
merci encore
|
|
|
|
|
oui, en fait $points ne vous retourne pas directement le nombre de points, je ne sais plus comment ca s'appelle au juste, mais il faut encore associer le resultat par ce code:
while ($userpoints=mysql_fetch_assoc($points))
{
echo $userpoints['points'];
}
et ca devrait marcher, seulement, j'ai regardé un peu dans le code de nuked clan hier soir, et c'est assez confu, notamment parce qu'ils mélangent php et html et qu'il ne commentent pas leur code, et j'ai du mal à comprendre quelle requette sert à récupérer les infos
vous voulez qu'il affiche les points lorsque l'utilisateur se connecte, donc dans le bloc login je suppose, il faut que j'y rejette un oeuil
|
|
|
|
|
ok, je pense avoir trouvé mais ca implique la modification d'une page de nukedclan, donc il est préférable que vous sauvegardiez d'abord cette page dans un dossier à part comme ça en cas de problème vous avez juste à la remettre
pour intergrer les points à l'utilisateur, il faut aller modifier les requettes dans nk\Includes\nkSessions.php
on trouve 2 fois ces lignes (lignes 69-70 & 90-91):
$sql2 = mysql_query("SELECT niveau, pseudo FROM " . USER_TABLE . " WHERE id = '" . $id_user . "'");
list($user_type, $user_name) = mysql_fetch_array($sql2);
on la remplace alors par
$sql2 = mysql_query("SELECT niveau, pseudo, points FROM " . USER_TABLE . " WHERE id = '" . $id_user . "'");
list($user_type, $user_name, $user_points) = mysql_fetch_array($sql2);
en fait la requette va maintenant selectionner les points, qui n'etaient pas récupérés.
on va ensuite retourner les points dans l'array $user, pour cela il faut modifier la ligne 106, en remplacant:
$user = array($id_user, $user_type, $user_name, $user_ip, $last_visite, $nb_mess);
par
$user = array($id_user, $user_type, $user_name, $user_ip, $last_visite, $nb_mess, $user_points);
donc pour afficher les points vous aurez juste besoin de faire $user[6]
-->Message édité par Beno@ le 20/02/2008 10:59:40<--
|
|
|
|
|
merveilleux !
super !
en effet ca fonctionne, merci beaucoup beaucoup pour cette aide !
|
|
|
|
|
re bonjour !
j'ai encore un petit probléme
quand j'essaye d'ajouter un nombre de point a un membre, je sais le faire avec la requete sql quand je connais le pseudo de la personne, mais comme je veux une page dynamique en php, je veux que la page récupére le pseudo de la personne et lui ajoute les points mais je n'y arrive pas
merci d'avance
|
|
|
|
|
vous voulez ajouter un nombre de points au membre qui est connecté?
dans ce cas, comme on peut le voir dans ce code:
$user = array($id_user, $user_type, $user_name, $user_ip, $last_visite, $nb_mess, $user_points);
$user_name est en 3e position dans l'array $user, comme on compte à partir de 0, il a pour clé 3-1 soit 2 donc pour recuperer l'id de l'utilisateur on fait $user[2]
et ensuite, on fait une requette "update" ou l'on met ajour le nombre de point pour l'utilisateur ayant le nom $user[2]
|
|
|
|
|
Beno@ a écrit :
vous voulez ajouter un nombre de points au membre qui est connecté?
dans ce cas, comme on peut le voir dans ce code:
$user = array($id_user, $user_type, $user_name, $user_ip, $last_visite, $nb_mess, $user_points);
$user_name est en 3e position dans l'array $user, comme on compte à partir de 0, il a pour clé 3-1 soit 2 donc pour recuperer l'id de l'utilisateur on fait $user[2]
et ensuite, on fait une requette "update" ou l'on met ajour le nombre de point pour l'utilisateur ayant le nom $user[2]
j'ai fais ca, j'ai utiliser la requete sql en écrivant :
bla bla bla where pseudo = $user[2] et ca ne fonctionne pas
j'ai essayé : pseudo = "$user[2]" ou encore pseudo = '$user[2]' ou encore :
$pseudo = $user[2]
bla bla where pseudo=$pseudo
bref rien ne marche
par contre quand je fais
where pseudo = admin par exemple ca fonctionne trés bien
merci encore
-->Message édité par Beno@ le 21/02/2008 19:04:17<--
|
|
|
|
|
|
'UPDATE `'.USER_TABLE.'` SET points=`'.$user[6]+$a.'` WHERE pseudo=`'.$user[2]'`';
|
|
1
|
|

|






|