|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() amine kortebyÉtudiant Inscription : avril 2011 Messages : 68 ![]() |
Bonjour,
j'ai un petit problème concernant le modification de mot de passe, j'ai dans une basse de donnée "test" une table "memb" qui contient les champ suivant pass, new_pass portant quand je clic modifier mot de passe le fprmulaire que j'ai crée aparer mais un tableau s'affiche en haut il y'est ecrie "Notice: Undefined index: new_pass in C:\wamp\www\test\modifpass.php on line 7" |
|
|
00
|
|
|
#2 | ||
|
Membre éclairé
![]() Webmaster Inscription : février 2007 Messages : 261 ![]() |
En cliquant sur un lien de type <a href, tu n'envois pas de données de type $_POST, donc à la ligne 7, il te signale qu'il ne trouve pas la valeur. Le soucis est aussi pourquoi arrive t-il à la ligne 7 alors que tu fais une vérification?
perso en général, pour une vérification, je fais: Code :
|
||
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() amine kortebyÉtudiant Inscription : avril 2011 Messages : 68 ![]() |
je vien de l'essaiyer et ya plus de message d'erreur mais quand je tape le nouveau mot de passe et que je clic sur modifier il me marque "un des champs est vide" pourquoi???
sachant que je n'est rien modifier a part la ligne 3 peut etre que je doit meme modifier la base de donnée et meme le script la ou je trouve new_ pass par mon_post ?? |
|
|
00
|
|
|
#4 |
|
Membre éclairé
![]() Webmaster Inscription : février 2007 Messages : 261 ![]() |
J'ai remarqué que tu avais 2 attributs name="pass".
Dans la condition de la ligne 3, fait un debug il va te marquer tous les post qu'il recoit et qui sont exploitables. Tu dois y aller par étapes, sans les bruler |
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() amine kortebyÉtudiant Inscription : avril 2011 Messages : 68 ![]() |
j'ai pas compris, ou mettre "var_dump($_POST);"
sachant que maintenant j'ai changer un attribut qui s'appelle maintenant name= new_pass. je l'ai meme editer dans le script du forum |
|
|
00
|
|
|
#6 | ||
|
Membre éclairé
![]() Webmaster Inscription : février 2007 Messages : 261 ![]() |
Le but est de savoir si quand tu cliques sur "modifier", tu recois bien toutes les infos du formulaire.
Code :
|
||
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() amine kortebyÉtudiant Inscription : avril 2011 Messages : 68 ![]() |
il ne m'affiche rien a part le formulaire et le mot de passe ne change pas
|
|
|
00
|
|
|
#8 | ||
|
Membre éclairé
![]() Webmaster Inscription : février 2007 Messages : 261 ![]() |
Tu as bien remplacé le "mon_post" par tes propres valeurs?
Code :
|
||
|
|
00
|
|
|
#9 | ||
|
Invité régulier
![]() amine kortebyÉtudiant Inscription : avril 2011 Messages : 68 ![]() |
c'est vrai je ne l'ai pas fais
maintenant il m'affiche Code :
et de "Attention votre mot de passe ne correspond pas a celui que vous avez définie lors de votre enregistrement. " mais dans le troiseme affichage il ya un probleme car sait le meme mot de passe que lors de l'enregistrement |
||
|
|
00
|
|
|
#10 | ||
|
Membre éclairé
![]() Webmaster Inscription : février 2007 Messages : 261 ![]() |
Ta variable $mdp n'existe pas donc l'errer est normale.
Mais en gros, tu veux modifier le mot de passe uniquement si il est différent donc: Code :
|
||
|
|
00
|
|
|
#11 |
|
Invité régulier
![]() amine kortebyÉtudiant Inscription : avril 2011 Messages : 68 ![]() |
maintenant il me marque "Undefined variable: id in C:\wamp\www\test\modifpass.php on line 18"
et voici la ligne 18: Code :
mysql_query("UPDATE memb SET pass='$new_pass' WHERE id = '$id'") or die ('Erreur : '.mysql_error()); |
|
|
00
|
|
|
#12 |
|
Membre éclairé
![]() Webmaster Inscription : février 2007 Messages : 261 ![]() |
La pareil, la variable $id n'est pas définie avant l'utilisation que tu veux faire. tu dois également la passer en parametre, par exemple en $_GET.
essaye de remplacer le $id par un id de ta table existant, histoire de voir si ton code se déroule bien. Tu feras le passage de l'id après? |
|
|
00
|
|
|
#13 |
|
Invité régulier
![]() amine kortebyÉtudiant Inscription : avril 2011 Messages : 68 ![]() |
oui c bon ça marche si je met id =1 mais maintenant comment le faire pour tout les membre ( ou mettre $_GET) je ss un débutant en webmestrie
|
|
|
00
|
|
|
#14 | ||
|
Membre éclairé
![]() Webmaster Inscription : février 2007 Messages : 261 ![]() |
Alors, le premier soucis est que j'ai bien envie d'aller me coucher mais en gros, pour ta nuit blanche, je te donne les pistes lol:
1: Sur la page principale qui contient les différents liens, tu fais une requete sur ta table des membres et tu les affiches tous. Tu devrais avoir autant de bouton "modifier mot de passe " que d'utilisateurs enregistrés. 2: Quand tu affiches le lien vers modifpass.php, tu rajoutes le parametre $_GET après, ce qu'il va te donner genre modifpass.php?id=1, ou le 1 est récupéré de la table membre. 3: Sur ton formulaire de modification, tu peux ajouter un input type hidden donc, <input type="hidden" name="id" value="<?php echo $id; ?>" /> 4: une fois que tu cliques sur le bouton modifier, tu récupères le post de la même manière que $pass et $new_pass, genre $id = $_POST['id']; 5: update de la table. 6: ajoutes également ce code tout en haut de ton fichier modifpass.php: Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com