Les archives de FluxBB.fr
Vous n'êtes pas identifié(e).
Bonjours a tous,
J'aimerais savoir quelle serait la manière la plus propre pour permettre aux membres de changer leur nom d'utilisateur.
j'ai déjà effectué des recherches google > http://punbb.informer.com/forums/topic/ … -username/
et essayé de modifier le code "profile.php"
ligne ~1150: affichage du champ username "si il sagit d'un admin"
et ligne 690 avec la vérif, si il sagit d'un admin qui se finit a la ligne 877 par l'update de la BDD.
Même en essayant de modifier les conditions, la BDD n'est pas updatée, pourtant aucun message d'erreur ne me revendique les droits d'autorisation pour modifier.
Quelqu'un pourrait il élucider tout cela ?
@+ :-|
Dernière modification par Levak (01-09-2008 10:42:41)
Heureux l'étudiant qui comme la rivière peut suivre son cours sans quitter son lit.
L'amour c'est comme la grippe, ça s'attrape dans la rue et ça se finit au lit.
Hors ligne
J'ai un peu regardé le fichier "profile.php" et voici ce que je pense qu'il faut faire :
Chercher ligne 693
// Are we allowed to change usernames?
if ($pun_user['g_id'] == PUN_ADMIN || ($pun_user['g_id'] == PUN_MOD && $pun_config['p_mod_rename_users'] == '1'))
{Remplacer par
// Are we allowed to change usernames?
if ($pun_user['id'] == $id || $pun_user['g_id'] == PUN_ADMIN || ($pun_user['g_id'] == PUN_MOD && $pun_config['p_mod_rename_users'] == '1'))
{Chercher ligne 1065
if ($pun_user['g_id'] == PUN_ADMIN || $pun_config['p_mod_rename_users'] == '1')
$username_field = '<input type="hidden" name="old_username" value="'.pun_htmlspecialchars($user['username']).'" /><label><strong>'.$lang_common['Username'].'</strong><br /><input type="text" name="req_username" value="'.pun_htmlspecialchars($user['username']).'" size="25" maxlength="25" /><br /></label>'."\n";Remplacer la condition par
if ($pun_user['id'] == $id || $pun_user['g_id'] == PUN_ADMIN || $pun_config['p_mod_rename_users'] == '1')J'ai l'impression que ce sont les mêmes lignes que toi, mais je ne vois pas trop où est-ce que ça coince ailleurs
.
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Salut,
merci de ta réponse, mais comme tu le dit c'est exactement ce que j'ai modifié et qui n'a aboutie a rien, en faite le champs du username se dégage, on peut saisir ce que l'on veut, mais lorsqu'on envoie, il dit "Profil mis a jours, redirection..." mais en fait il ne change rien lol.
Heureux l'étudiant qui comme la rivière peut suivre son cours sans quitter son lit.
L'amour c'est comme la grippe, ça s'attrape dans la rue et ça se finit au lit.
Hors ligne
Bon alors j'ai cherché mais j'ai tjs pas trouvé, je ne comprends pas du tout pk ça marche pas, la requête est pourtant quelque part mais je n'arrive pas a mettre la main dessus, personne ne sait ?
Heureux l'étudiant qui comme la rivière peut suivre son cours sans quitter son lit.
L'amour c'est comme la grippe, ça s'attrape dans la rue et ça se finit au lit.
Hors ligne
Je ne sais pas répondre mais je suis très, mais alors très très intéressé : j'étais persuadé qu'il suffisait de cocher la case adaptée dans le panneau d'administration (à "permissions") mais je viens de vérifier : cette case n'est faite que pour donner cette permission aux modérateurs !
Peut-être est-il possible de faire en sorte que les propriétés de cette case s'applique à tous les utilisateurs, mais je crains que cela permette alors de changer les pseudos des autres, ce qui n'est pas le but... Mais c'est peut-être une piste que vous saurez exploiter, si vous trouvez qqchose merci de nous tenir au courant.
PS : tu devrais essayer sur http://fluxbb.org/forums/ où se trouvent l'équipe originelle de punnBB plutôt que sur http://punbb.informer.com/forums/ qui est le nom de domaine racheté de feu punbb.org
Hors ligne
Ça ne permettrait pas aux membres de changer le pseudo des autres : il y a une condition qui vérifie que tu modifies bien TON profil si tu n'es pas ni modo ni admin.
N'hésite pas à poster si vous trouvez la réponse ailleurs : j'aimerais bien comprendre ce que j'ai raté dans le fichier pour que ça ne marche pas
.
Nous ne faisons pas le travail à votre place mais nous prenons le temps de vous montrer le chemin. Merci de lire ce que l'on vous dit et de réfléchir avant de re-demander une explication.
Hors ligne
Apparemment ya pas que moi qui est intéréssé lol
http://fluxbb.org/forums/topic/1736/hel … -username/
tjs rien trouvé, je teste, je fais tout bugguer, je teste, je fait tout planter, je teste, ça marche pas 
@+
Heureux l'étudiant qui comme la rivière peut suivre son cours sans quitter son lit.
L'amour c'est comme la grippe, ça s'attrape dans la rue et ça se finit au lit.
Hors ligne
J'ai trouvéééé !!!!!
Bon, c'était vraiment pas loin de ce que l'on avait fait lol
ligne 686
trouvez
if ($pun_user['g_id'] < PUN_GUEST)remplacez par
if ($pun_user['g_id'] != PUN_GUEST)la condition qui suit après le com "Are we allowed to blablabla"
if ($pun_user['g_id'] == $group_id || $pun_user['g_id'] == PUN_ADMIN || ($pun_user['g_id'] == PUN_MOD && $pun_config['p_mod_rename_users'] == '1'))ligne 1140
trouvez
if ($pun_user['g_id'] < PUN_GUEST)remplacer par
if ($pun_user['g_id'] != PUN_GUEST)et pour eviter les confusions après la condition
if ($pun_user['g_id'] == PUN_ADMIN || $pun_config['p_mod_rename_users'] == '1')
$username_field = '<input type="hidden" name="old_username" value="'.pun_htmlspecialchars($user['username']).'" /><label><strong>'.$lang_common['Username'].'</strong><br /><input type="text" name="req_username" value="'.pun_htmlspecialchars($user['username']).'" size="25" maxlength="25" /><br /></label>'."\n";
else
$username_field = '<input type="hidden" name="old_username" value="'.pun_htmlspecialchars($user['username']).'" /><label><strong>'.$lang_common['Username'].'</strong><br /><input type="text" name="req_username" value="'.pun_htmlspecialchars($user['username']).'" size="25" maxlength="25" /><br /></label>'."\n";Notre erreur était que l'on ne rentrait pas dans la 1ere condition "if ($pun_user['g_id'] < PUN_GUEST)"
vu que les admin =1
modo = 2
guest a 3 et les autres groupe a 4 et plus, donc en tant que membres on ne rentrait pas
Puis notre deusieme erreur était que pun_user['g_id'] qui était le groupe id que l'on vient de voir, ne pouvait pas être égal a l'id de l'utilisateur qui lui est propre a chaque membres !!
@+ !!
Heureux l'étudiant qui comme la rivière peut suivre son cours sans quitter son lit.
L'amour c'est comme la grippe, ça s'attrape dans la rue et ça se finit au lit.
Hors ligne
Félicitations Levak, et merci de m'avoir prévenu car la notification ne m'est pas (encore ?) parvenue. Avec un peu de chance je testerai ça très bientôt...
Hors ligne
Ca marche Levak, t'es un seigneur !
Pour ceux qui comme moi auraient un doute sur la dernière modif à faire : voici mon code final à partir de l'avant dernière modif (ligne 1063 chez moi, fluxBB1.2.20)
if ($pun_user['g_id'] != PUN_GUEST)
{
if ($pun_user['g_id'] == PUN_ADMIN || $pun_config['p_mod_rename_users'] == '1')
$username_field = '<input type="hidden" name="old_username" value="'.pun_htmlspecialchars($user['username']).'" /><label><strong>'.$lang_common['Username'].'</strong><br /><input type="text" name="req_username" value="'.pun_htmlspecialchars($user['username']).'" size="25" maxlength="25" /><br /></label>'."\n";
else
$username_field = '<p>'.$lang_common['Username'].': '.pun_htmlspecialchars($user['username']).'</p>'."\n";
$email_field = '<label><strong>'.$lang_common['E-mail'].'</strong><br /><input type="text" name="req_email" value="'.$user['email'].'" size="40" maxlength="50" /><br /></label><p><a href="misc.php?email='.$id.'">'.$lang_common['Send e-mail'].'</a></p>'."\n";
}
else
{
$username_field = '<p>'.$lang_common['Username'].': '.pun_htmlspecialchars($user['username']).'</p>'."\n";
if ($pun_config['o_regs_verify'] == '1')
$email_field = '<p>'.$lang_common['E-mail'].': '.$user['email'].' - <a href="profile.php?action=change_email&id='.$id.'">'.$lang_profile['Change e-mail'].'</a></p>'."\n";
else
$email_field = '<label><strong>'.$lang_common['E-mail'].'</strong><br /><input type="text" name="req_email" value="'.$user['email'].'" size="40" maxlength="50" /><br /></label>'."\n";
}
if ($pun_user['g_id'] == PUN_ADMIN || $pun_config['p_mod_rename_users'] == '1')
$username_field = '<input type="hidden" name="old_username" value="'.pun_htmlspecialchars($user['username']).'" /><label><strong>'.$lang_common['Username'].'</strong><br /><input type="text" name="req_username" value="'.pun_htmlspecialchars($user['username']).'" size="25" maxlength="25" /><br /></label>'."\n";
else
$username_field = '<input type="hidden" name="old_username" value="'.pun_htmlspecialchars($user['username']).'" /><label><strong>'.$lang_common['Username'].'</strong><br /><input type="text" name="req_username" value="'.pun_htmlspecialchars($user['username']).'" size="25" maxlength="25" /><br /></label>'."\n";Hors ligne