Récupérer le ID des mebres avec php

glodybiss Messages postés 509 Statut Membre -  
glodybiss Messages postés 509 Statut Membre -
Bonjour,

J'ai créé un formulaire qui permettra aux membres enregistré dans mon site de faire les mises à jour et modifier leurs infos, alors j'ai déjà fini ma requête sql mais j'ai un problème pour récupérer le ID de l'utilisateur correspondant pour faire la mise à jour uniquement dans sa table.

Voyez à quoi ressemble ce que j'ai fais mais ça ne fonctionne pas.

  $sql = 'UPDATE 'mabase'.'membres' SET 'nom' = "'.mysql_escape_string($_POST['nom']).'",'prenom' = "'.mysql_escape_string($_POST['prenom']).'",'privilege' = "'.mysql_escape_string($_POST['privilege']).'",'email' = "'.mysql_escape_string($_POST['email']).'",'telephone' = "'.mysql_escape_string($_POST['telephone']).'",  
'fonction_tech' = "'.mysql_escape_string($_POST['fonction_tech']).'" WHERE 'agent'.'.intval($_GET['u']).'';


j'ai essayé d'utiliser $_GET['u'] le u correspond à l'id. :-)

4 réponses

BloodyAngel Messages postés 1605 Statut Contributeur 403
 
Hello,
cette partie-ci :
'" WHERE 'agent'.'.intval($_GET['u']).'';

semble poser problème au niveau des apostrophes et des points.
Aussi ta condition WHERE n'en est pas une.
0
Stringman621 Messages postés 1802 Statut Membre 340
 
Salut ! (encore moi ;) )

Es-tu sûr que tu récupère ta valeur avec la variable
 $_GET['u']
, ça ne serait pas plutot avec la variable
$_POST['u']

Et comme le dis BloodyAngel ta clause WHERE n'en est pas une tu ecris '
" WHERE 'agent'.'.intval($_GET['u']).'';

Ca devrait être un truc du genre
'" WHERE 'agent'.'.intval($_GET['u']).'='.$_SESSION['u'];
0
glodybiss Messages postés 509 Statut Membre 9
 
Stringman encore toi ;) Thanks,

'" WHERE 'agent'.'.intval($_GET['u']).'='.$_SESSION['u'];


Au j'ai essayé cette méthode ça me renvoie une erreur que la variable u n'existe pas.
Notice: Undefined index: u in C:\wamp\www\internetservices\modifierAgent.php on line 6 


Je ne pense pas que ça serai avec la méthode
$_POST
0
Stringman621 Messages postés 1802 Statut Membre 340
 
Ton formulaire tu l'envoie en POST ou en GET ?

Vois le conseil de dream666 pour faire correctement ta requête ;)
0
dream666 Messages postés 735 Date d'inscription   Statut Membre Dernière intervention   104
 
bonjour,
Faut passer par les sessions
cela permet de garder son id tant que le navigateur n'ai pas fermer

faut sélectionner dans la table par rapport a son id de session

Il y a un exemple d'utilisation de session ici pris au hasard
https://phpsources.net/tutoriel-sessions.htm
0
glodybiss Messages postés 509 Statut Membre 9
 
Merci mais dans le tuto ce n'est pas vraiment ce que je veux.
0
Stringman621 Messages postés 1802 Statut Membre 340
 
Comment fais-tu alors pour savoir l'utilisateur qui est connecté, sur quel utilisateur il faut faire la mise à jour?
0
BloodyAngel Messages postés 1605 Statut Contributeur 403
 
Lis bien les commentaires de Stringman621 et dream666. Ils t'expliquent exactement comment corriger ton code.
Informe-toi sur les sessions. C'est la procédure la plus simple, sûre et efficace pour garder des infos sur l'utilisateur d'une page à l'autre.

Une fois que tu seras sûr d'avoir récupéré l'id de l'utilisateur avec les sessions, utilises la correction de Stringman dans ta requête et ça devrait bien se passer.

Si tu veux plus d'infos sur les sessions, tu as trois excellents tutos ici :
https://php.developpez.com/cours/?page=securite#sessions

Renseignes-toi bien sur les sessions. Ce sont des éléments indispensables pour tous les sites qui gèrent correctement leurs utilisateurs.
0
glodybiss Messages postés 509 Statut Membre 9
 
^^ Merci !!!
0