j ai mis $new_nom et non $nom
faute de frappe
désolé
Version imprimable
j ai mis $new_nom et non $nom
faute de frappe
désolé
Houlala !
Bon, commencons simple : un formulaire se termine par </form> et non </from>
Ensuite tu dois etre sur un systeme qui accepte encore le passage de variables direct (sans passer par les $_POST, $_GET). Si ca n'est pas le cas, probleme.
Dans ton formulaire, tu fais un :
<input name="nom" type="text" id="nom" value="<?php echo $_SESSION['nom']=$nom; ?>">
Or $nom, a ce moment la ne vaut rien (visiblement tu n'as non plus les warnings activés...)
donc, tu fixes la valeur de $_SESSION['nom'] ... à rien. Donc plus de valeur dans ton champ.
Allez on reprend le tout, en supposant la premiere hypothese.
Deja, essaie ca...Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 <?php require_once('connexion.php'); session_start(); // On relaye la session if (session_is_registered("authentification") && $_SESSION['privilege'] == "user"){ } else { header("Location:index.php?erreur=intru"); } ?> <? if ($ajout=='1') { $nouveau_nom=$nom; //ou $nouveau_nom=$_POST['nom'] $req = "UPDATE utilisateurs SET nom ='$nouveau_nom' WHERE login='$login' AND pass='$pass'"; echo '<br>Ma requete : '.$req.'<br>'; $_SESSION['nom']=$nouveau_nom; if(!mysql_query($req)) echo 'Erreur : '.mysql_error().'<br>'; if(mysql_affected_rows() != 1) echo '<br>Aucun enregistrement modifié !<br>'; } else { echo '<br>Pas de modif<br>'; } ?> <form action="monprofils.php?ajout=1" method="post" name="modif"> <input name="nom" type="text" id="nom" value="<?php echo $_SESSION['nom']; ?>"> <input type="submit" name="submit" value="ok"> </form>
S.
J ai ecrit comme tu me l as dis
il a bien ajouté le nouveau nom dans la base de donner mais dans le <input> il ecrit maintenant nouveau_nomCode:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 <?php require_once('connexion.php'); session_start(); // On relaye la session if (session_is_registered("authentification") && $_SESSION['privilege'] == "user"){ } else { header("Location:index.php?erreur=intru"); } ?> <? if ($ajout=='1') { $nouveau_nom=$_POST['nom']; //ou $nouveau_nom=$_POST['nom'] $req = "UPDATE utilisateurs SET nom ='$nouveau_nom' WHERE login='$login' AND pass='$pass'"; echo '<br>Ma requete : '.$req.'<br>'; $_SESSION['nom']=$nouveau_nom; if(!mysql_query($req)) echo 'Erreur : '.mysql_error().'<br>'; if(mysql_affected_rows() != 1) echo '<br>Aucun enregistrement modifié !<br>'; } else { echo '<br>Pas de modif<br>'; } ?> <form action="monprofils.php?ajout=1" method="post" name="modif"> <input name="nom" type="text" id="nom" value="<?php echo $_SESSION['nom']; ?>"> <input type="submit" name="submit" value="ok"> </form>
Si tu ne veux pas mettre a jour le nom dans ton input, supprime la ligne
$_SESSION['nom']=$nouveau_nom
...
PS. : utilise les balises codes, c'est plus agreable à lire.
Sa marche nikel maintenant , franchement merci a toi gloubi et a toi sohnic
sa faisait 2 jours que j etai dessus :lol:
autre question si tu as le temps sohnic
si par exemple je veux faire d autre modif j ai juste a rajouter
c est bien sa ? si je veux faire la modif d un prenom egalement ?Code:
1
2
3
4
5
6
7
8
9
10
11
12
13 <? if ($ajout=='1') { $nouveau_nom=$_POST['nom']; $nouveau_prenom=$_POST['nom']; // 2 eme modif $req = "UPDATE utilisateurs SET nom ='$nouveau_nom', nom ='$nouveau_prenom' WHERE login='$login' AND pass='$pass'"; echo '<br>Ma requete : '.$req.'<br>'; $_SESSION['nom']=$nouveau_nom; $_SESSION['prenom']=$nouveau_prenom; if(!mysql_query($req)) echo 'Erreur : '.mysql_error().'<br>'; if(mysql_affected_rows() != 1) echo '<br>Aucun enregistrement modifié !<br>'; } else { echo '<br>Pas de modif<br>'; } ?>
Et bien, ca suppose que dans ton formulaire tu auras un deuxieme input, qui s'appellera prenom (par exemple).
Ensuite tu recuperes par
$nouveau_prenom=$_POST['prenom']
Tu ne peux pas utiliser le meme nom pour tes deux champs, l'un ecrabouillant l'autre.
.... et pitié pour nous, les balises CODE (le # dans la barre d'outil au dessus de la fenetre ou tu tapes ton post)
Bon courage !!
S.
Merci encore
passe une bonne soirée, porte toi bien et a bientot Inch'Allah