Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/06/2006, 15h05   #1
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
Par défaut [SQL] Récupération de données et Insert dans une table

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 :
1
2
3
4
5
 
id_demande` INT( 255 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`id_users` INT( 255 ) NOT NULL ,
`evenement` VARCHAR( 255 ) NOT NULL ,
`date` DATE NOT NULL
J'ai crée un espace membre avec acces par login/password qui créer un session...etc ....ça marche bien .
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 :
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
 if(isset($_POST['evenement'])) $evenement=$_POST['evenement'];
else $evenement="";
 
if(isset($_.....autres champs
 
 
// connexion à la base
$db = mysql_connect('******', '******', '*******') or die('Erreur de connexion '.mysql_error());
// sélection de la base 
 
mysql_select_db('*******',$db) or die('Erreur de selection '.mysql_error()); 
 
// on écrit la requête sql 
$sql = "INSERT INTO t_demande(id_demande .........)
VALUES('' '$id_demande, .......etc )"; 
 
// on insère les informations du formulaire dans la table 
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
 
// on affiche le résultat pour le visiteur 
echo 'Vos infos on été ajoutées.'; 
 
mysql_close(); // on ferme la connexion 
} 
?>
Mais la question qui se pose est:

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 :
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
 <<<<<<<<<<<<<<<<<<<<<<<script verif du login et création de session>>>>>>
<?php 
session_start(); 
$identifiant_inscriptionOK = false; 
?>
<html>
<!-- Date de création: 19/06/2006 -->
<head>
<title></title>
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="author" content="Usager non enregistré">
<meta name="generator" content="WebExpert 5">
</head>
<body>
<?php
// connexion à la base
$db = mysql_connect('localhost', '******', '******') or die('Erreur de connexion '.mysql_error());
 
// sélection de la base 
mysql_select_db('*******',$db) or die('Erreur de selection '.mysql_error());
 
// 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 = $sql = "SELECT 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 le identifiant_inscription a été validé on met les données en sessions
if ($identifiant_inscriptionOK) {
$_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 !'; 
}
?>
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2006, 16h02   #2
Membre régulier
 
Inscription : mai 2006
Messages : 60
Détails du profil
Informations personnelles :
Âge : 28

Informations forums :
Inscription : mai 2006
Messages : 60
Points : 73
Points : 73
Envoyer un message via Skype™ à Tiois
Salut, je modifirais ta requetes SQL sur le login comme suit:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 // 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);
 
// Si l'utilisateur existe ...
if (mysql_num_rows($req) > 0) {
   $data = mysql_fetch_assoc($req);
   $_SESSION['user_id'] = $data['user_id']; //en supposant que t'as un champs user_id dans ta table d'utilisateur
   $_SESSION['identifiant_inscription'] = $data['identifiant_inscription'];
   $_SESSION['mot_de_passe_inscription'] = $data['mot_de_passe_inscription'];
}
ensuite, pour insérer le ID dans ta table t_demande, tu fais comme suit:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 if(isset($_.....autres champs
 
 
// connexion à la base
$db = mysql_connect('******', '******', '*******') or die('Erreur de connexion '.mysql_error());
// sélection de la base
 
mysql_select_db('*******',$db) or die('Erreur de selection '.mysql_error());
 
// on écrit la requête sql
$sql = "INSERT INTO t_demande SET user_id='".$_SESSION["user_id"]."', id_demande='valeur', ....";
 
// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
 
// on affiche le résultat pour le visiteur
echo 'Vos infos on été ajoutées.';
 
mysql_close(); // on ferme la connexion
}
?>
Et voilà !
Tiois est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2006, 15h07   #3
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
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 :
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 >>>>>>>>veriflogin.php>>>>>>>>>>>>>>>>>
<?php 
session_start(); 
$identifiant_inscriptionOK = false; 
?>
<html>
<!-- Date de création: 19/06/2006 -->
<head>
<title></title>
<meta name="description" content="">
<meta name="keywords" content="">
<meta name="author" content="Usager non enregistré">
<meta name="generator" content="WebExpert 5">
</head>
<body>
<?php
// connexion à la base
$db = mysql_connect('localhost', '*******', 'u******')  or die('Erreur de connexion '.mysql_error());
 
// sélection de la base  
    mysql_select_db(*******,$db)  or die('Erreur de selection '.mysql_error());
 
// 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);
 
 
 
 
  // On va chercher le mot de passe afférent à cet identifiant_inscription
  $sql = $sql = "SELECT 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['user_id'] = $data['user_id']; //en supposant que t'as un champs user_id dans ta table d'utilisateur
$_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 !'; 
}
?>
<a href="http://www.">Entrez dans l'espace membre</a>
</body>
</html>

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
 >>>>>>>>>>>>>>>>demande.php>>>>>>>>>>>>>>>>>>>>>>>><
<?php 
// On commence par récupérer les champs 
if(isset($_POST['evenement']))      $evenement=$_POST['evenement'];
else      $evenement="";
 
if(isset($_POST['date']))      $date=$_POST['date'];
else      $date="";
 
if(isset($_POST['commentaire']))      $commentaire=$_POST['commentaire'];
else      $commentaire="";
 
 
    { 
       // connexion à la base
$db = mysql_connect('localhost', '***', '*****')  or die('Erreur de connexion '.mysql_error());
// sélection de la base  
 
    mysql_select_db(*******,$db)  or die('Erreur de selection '.mysql_error()); 
 
    // on écrit la requête sql
$sql = "INSERT INTO t_demandes SET id_users='".$_SESSION["id_users"]."', evenement='$evenement', date='$date' , commentaire='$commentaire'";
 
 
    // on insère les informations du formulaire dans la table 
    mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 
 
    // on affiche le résultat pour le visiteur 
    echo 'votre demande a été enregistrée !.'; 
include('http://www.);
    }  
?>

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
merci d'avance pour votre aide....
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2006, 18h29   #4
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
Code :
1
2
3
 
$_SESSION['user_id'] = $data['user_id'];
echo $_SESSION['user_id'] // pour vérifier si ta variable session contient bien une valeur
Il semblerait que user_id soit un champ de la table t_demande. Existe-t-il également dans t_users?

Le plus simple serait de nous donner la structure de tes deux tables pour que l'on puisse vérifier tes requêtes.
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/07/2006, 18h55   #5
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
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
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/07/2006, 21h40   #6
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
Ok l'erreur est la suivante


Code :
1
2
3
4
SELECT id,identifiant_inscription, mot_de_passe_inscription FROM t_users 

WHERE identifiant_inscription = '".addslashes($identifiant_inscription)."'";
si tu ne sélectionnes pas id dans ta 2ème requête sql, data['id'] sera forcément vide. c'est la raison pour laquelle ta variable session est vide.
idem pour identifiant_inscription.

N'oublie pas égalment de faire un echo $_SESSION['..']; pour voir le contenu
de tes variables session
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 00h51   #7
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
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 !';
}
?>
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 01h14   #8
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
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.
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 12h05   #9
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
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 !!!
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 13h01   #10
Expert Confirmé
 
Avatar de Maxoo
 
Maxime Pasquier
Expert PHP
Inscription : novembre 2004
Messages : 2 126
Détails du profil
Informations personnelles :
Nom : Maxime Pasquier
Âge : 28
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Expert PHP
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : novembre 2004
Messages : 2 126
Points : 2 602
Points : 2 602
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
Maxoo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 19h14   #11
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
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 :
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
 
  // On va chercher le mot de passe afférent à cet identifiant_inscription
  $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 !'; 
}
?>
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 19h42   #12
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
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 * ....
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/07/2006, 23h20   #13
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
bon j'ai essayé un peu tout .....toujours rien qui met en session l'id.....je ne comprends plus rien...
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2006, 01h17   #14
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
Code :
1
2
3
$sql = $sql = "SELECT id, identifiant_inscription, mot_de_passe_inscription FROM 
t_users WHERE identifiant_inscription = '".addslashes($identifiant_inscription)."'";
Pkoi tu as deux fois la variable $sql?
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/07/2006, 19h54   #15
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
c'etait effectivement pas tres cohérent....mais apres l'avoir supprimé....toujours pas d'ID en session ....je commence à plus y croire
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/07/2006, 23h43   #16
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
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é.
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2006, 20h26   #17
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
voilà les fichiers demandés....tu es vraiment sympa de m'aider !
bon courage !
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2006, 20h31   #18
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
voilà les fichiers demandés !.....t'es vraiment sympa de m'aider !
bon courage !scripts.zip
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2006, 23h36   #19
Expert Confirmé Sénior
 
Homme Laurent Willems
Expert Stop/Start
Inscription : septembre 2002
Messages : 2 551
Détails du profil
Informations personnelles :
Nom : Homme Laurent Willems
Âge : 33
Localisation : Belgique

Informations professionnelles :
Activité : Expert Stop/Start

Informations forums :
Inscription : septembre 2002
Messages : 2 551
Points : 4 271
Points : 4 271
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 :
1
2
 
if(!empty($_POST['identifiant_inscription']) && !empty($_POST['mot_de_passe_inscription']) ) {
J'ai retiré le isset($_POST) inutilie car la fonction empty() test d'une part si la chaine est vide
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:
DEBUG sql: SELECT * FROM t_users WHERE identifiant_inscription = 'test' AND mot_de_passe_inscription = 'test'
DEBUG nombre de ligne: 1
DEBUG sessions: Id: 1 Identifiant: test Session password: test
Entrez dans l'espace membre
résultat du test du script avec test1/test (identifiants erronnés)

Citation:
DEBUG sql: SELECT * FROM t_users WHERE identifiant_inscription = 'test1' AND mot_de_passe_inscription = 'test'
DEBUG nombre de ligne: 0
Pas de session dans ce cas
Une erreur est survenue, veuillez réessayer !
Résultat du test du script avec aucun identifiant introduit:

Citation:
Une erreur est survenue2, veuillez réessayer !
La requête n'est pas effectuée et pas de session
Bonne continuation
Fichiers attachés
Type de fichier : php verifLogin.php (2,0 Ko, 4 affichages)
Mygale1978 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/07/2006, 12h21   #20
Membre du Club
 
Avatar de heteroclite
 
Inscription : juin 2006
Messages : 147
Détails du profil
Informations personnelles :
Âge : 37
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : juin 2006
Messages : 147
Points : 50
Points : 50
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 ?
heteroclite est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h10.


 
 
 
 
Partenaires

Hébergement Web