|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 | ||||||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Bonjour,
Voilà mon problème de débutant ! J'ai une base de données mysql avec 2 tables : Ma table t_users a la structure: id (auto incre) nom prenom adresse etc.... ma table t_demande: Code :
Par contre une fois dans l'espace membres j'aimerais que les utilisateurs puissent faire de la saisie dans la "table demandes" mais j'aimerais recuperer l'id (table users) de l'utilisateur en cours pour savoir qui effectue la demande, et donc le stocker dans le champs "id-users" de la table demande. Comme ça je pourrais faire le lien entre la table users et demande. (et bien maitriser qui effectue les demandes) donc je vais faire un formulaire + un script style: Code :
comment récupérer l'id_user de la personne connectée et le stocker dans la table demande ? Il faut avoir mis l'ID users en session ? Comment ? et comment le stocker ensuite dans la table demande ? merci d'avance pour votre aide ! pour info ci dessous mon script de verif login et création de session: Code :
|
||||||
|
|
00
|
|
|
#2 | ||||
|
Membre régulier
![]() |
Salut, je modifirais ta requetes SQL sur le login comme suit:
Code :
Code :
|
||||
|
|
00
|
|
|
#3 | ||||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
merci beaucoup pour ton aide !
je viens de mettre en pratique et j'ai encore un problème ...je crois que la session ne conserve pas l'id_users ... je te mets mes deux scripts: - le premier qui vérifie le login/password ..;puis enregistre les variables de session (normalement...) - le deuxième qui normalement doit enregistrer les données dans la table demande je ne vois pas ou est le problème ? Code :
Code :
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> merci d'avance pour votre aide.... |
||||
|
|
00
|
|
|
#4 | ||
|
Expert Confirmé Sénior
![]() Laurent WillemsExpert Stop/Start Inscription : septembre 2002 Messages : 2 551 ![]() |
Code :
Le plus simple serait de nous donner la structure de tes deux tables pour que l'on puisse vérifier tes requêtes. |
||
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Bonjour,
je m'etais effectivement trompé sur le nom de champs ....mais en remplaçant user_id par id ça ne marche toujours pas , j'ai l'impression qu'il ne veut pas mettre le champs "ID" de ma table t_users en sesion. Ci dessous la structure de mes tables comme demandé. merci d'avance ! >>>>>>>tables users= t_users>>>>>>>>>>>> id int(11) No auto_increment identifiant_inscription varchar(30) latin1_swedish_ci No mot_de_passe_inscription varchar(10) latin1_swedish_ci No email varchar(30) latin1_swedish_ci No civilite varchar(10) latin1_swedish_ci No prenom varchar(20) latin1_swedish_ci No nom varchar(30) latin1_swedish_ci No date_naissance varchar(10) latin1_swedish_ci No origine varchar(50) latin1_swedish_ci No ville varchar(40) latin1_swedish_ci No region varchar(40) latin1_swedish_ci No site_web varchar(60) latin1_swedish_ci No centres_interets varchar(150) latin1_swedish_ci No categorie_professionnelle varchar(40) latin1_swedish_ci No domaine_activite varchar(30) latin1_swedish_ci No entreprise_profession varchar(30) latin1_swedish_ci No entreprise varchar(20) latin1_swedish_ci No entreprise_site_web varchar(100) latin1_swedish_ci No entreprise_activite varchar(30) latin1_swedish_ci No newsletter >>>>>>>>>>table demande= t_demandes id_demande int(255) No auto_increment id_users int(255) No 0 evenement varchar(255) latin1_swedish_ci No date text latin1_swedish_ci No hab_alim varchar(255) latin1_swedish_ci No commentaire |
|
|
00
|
|
|
#6 | ||
|
Expert Confirmé Sénior
![]() Laurent WillemsExpert Stop/Start Inscription : septembre 2002 Messages : 2 551 ![]() |
Ok l'erreur est la suivante
Code :
idem pour identifiant_inscription. N'oublie pas égalment de faire un echo $_SESSION['..']; pour voir le contenu de tes variables session |
||
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Tout d'abord merci pour ta patiente, j'ai mis en pratique tes recommandations (voir ci dessous) j'ai ensuite testé mes variables de session, j'ai bien le login, et le mot de passe en session, mais pas l'id
Je ne vois pas la faille...si tu peux encore me donner un coup de pouce....merci // On n'effectue les traitement qu'à la condition que // les informations aient été effectivement postées if ( isset($_POST) && (!empty($_POST['identifiant_inscription'])) && (!empty($_POST['mot_de_passe_inscription'])) ) { extract($_POST); // je vous renvoie à la doc de cette fonction // On va chercher le mot de passe afférent à ce identifiant_inscription $sql = "SELECT * FROM t_users WHERE identifiant_inscription = '".addslashes($identifiant_inscription)."' AND mot_de_passe_inscription = '".addslashes($mot_de_passe_inscription)."'"; $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql); // requete2 $sql = $sql = "SELECT id, identifiant_inscription, mot_de_passe_inscription FROM t_users WHERE identifiant_inscription = '".addslashes($identifiant_inscription)."'"; $req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql); // On vérifie que l'utilisateur existe bien if (mysql_num_rows($req) > 0) { $data = mysql_fetch_assoc($req); // On vérifie que son mot de passe est correct if ($mot_de_passe_inscription == $data['mot_de_passe_inscription']) { $identifiant_inscriptionOK = true; } } } // Si l'utilisateur existe ... if (mysql_num_rows($req) > 0) { $data = mysql_fetch_assoc($req); $_SESSION['id'] = $data['id']; $_SESSION['identifiant_inscription'] = $data['identifiant_inscription']; $_SESSION['mot_de_passe_inscription'] = $data['mot_de_passe_inscription']; } else { echo 'Une erreur est survenue, veuillez réessayer !'; } ?> |
|
|
00
|
|
|
#8 |
|
Expert Confirmé Sénior
![]() Laurent WillemsExpert Stop/Start Inscription : septembre 2002 Messages : 2 551 ![]() |
Supprime ta deuxième requête, elle ne me semble pas nécessaire vu que tu récupères déjà toutes les infos dans ta première requête.
|
|
|
00
|
|
|
#9 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Bonjour,
La première ou la deuxième ? La premiere ne va pas chercher l'id donc je pense que c'est la première à laquelle tu pensais. On va y arriver !!! |
|
|
00
|
|
|
#10 |
|
Expert Confirmé
![]() Maxime PasquierExpert PHP Inscription : novembre 2004 Messages : 2 126 ![]() |
utilisez les balises CODE svp !! c'est le #
__________________
Pour une bien meilleur lisibilité, utilisez la balise [code], c'est le [#] dans votre éditeur. Mon espace Développez : mes Créations. Rencontre & Carte des Membres de Developpez.com, version 3.0 |
|
|
00
|
|
|
#11 | ||
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Bon voilà mon nouveau code....mais ça ne marche pas du tout ....je ne comprends rien ....l'id ne se met toujours pas en session....
Code :
|
||
|
|
00
|
|
|
#12 |
|
Expert Confirmé Sénior
![]() Laurent WillemsExpert Stop/Start Inscription : septembre 2002 Messages : 2 551 ![]() |
Je parlais bien de supprimer la 2ème!
ta première requête récupère bien tous les champs vu que tu effectues un select * .... |
|
|
00
|
|
|
#13 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
bon j'ai essayé un peu tout .....toujours rien qui met en session l'id.....je ne comprends plus rien...
|
|
|
00
|
|
|
#14 | ||
|
Expert Confirmé Sénior
![]() Laurent WillemsExpert Stop/Start Inscription : septembre 2002 Messages : 2 551 ![]() |
Code :
|
||
|
|
00
|
|
|
#15 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
c'etait effectivement pas tres cohérent....mais apres l'avoir supprimé....toujours pas d'ID en session ....je commence à plus y croire
|
|
|
00
|
|
|
#16 |
|
Expert Confirmé Sénior
![]() Laurent WillemsExpert Stop/Start Inscription : septembre 2002 Messages : 2 551 ![]() |
Peux-tu me zipper ton formulaire login/password, ta page validlogin.php, et le fichier .sql reprenant la structure de tes deux tables et mettre ça en pièce jointe?
Je vais tester ton script de mon côté. |
|
|
00
|
|
|
#17 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
voilà les fichiers demandés....tu es vraiment sympa de m'aider !
bon courage ! |
|
|
00
|
|
|
#18 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
voilà les fichiers demandés !.....t'es vraiment sympa de m'aider !
bon courage !scripts.zip |
|
|
00
|
|
|
#19 | |||||
|
Expert Confirmé Sénior
![]() Laurent WillemsExpert Stop/Start Inscription : septembre 2002 Messages : 2 551 ![]() |
Je te renvoie en pièce jointe le fichier valilogin.php (C'est le seul qui a été modifié):
tu avais plusieurs erreurs: - double requête alors qu'une seule suffisait. - double test du nombre de ligne alors qu'un seul suffisait. - Une { mal placée - incohérence au niveau de certaines variables (ex: $identifiant_inscription au lieu de $_POST['identifiant_inscription']) - extract ($_POST) ne sert à rien Code :
mais aussi si la variable $_POST en question existe. Je pense que c'est à peut près tout pour les erreurs j'ai inséré deux users test/test et test2/test2 résultat du test du script avec test/test Citation:
Citation:
Citation:
|
|||||
|
|
00
|
|
|
#20 |
|
Membre du Club
![]() Inscription : juin 2006 Messages : 147 ![]() |
Bonjour et merci infiniment pour cet aide précise et efficace ! Tu as trouvé la solution puisque l'id est effectivement mis en session. Il me reste un petit problème d'enregistrement de cette variable de session dans la table demande . le fichier demandes.php doit presenter des erreurs ...si tu as une idée elle sera la bienvenue ?
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com