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 13/11/2007, 17h36   #1
Membre régulier
 
Avatar de loopback
 
Inscription : septembre 2006
Messages : 170
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 170
Points : 75
Points : 75
Par défaut [SQL] requête SELECT impossible

Bonjour,
j'essai de créer un script qui vérifie que le login existe dans la base de donnée,
s'il existe il doit m'afficher ok sinon il m'affiche pas ok.

Lorsque je test le script sans la requête ça marche mais si je met la requête sql alors ça ne marche plus.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
 
//session_start();
require_once "include/connect.inc.php";
 
$login = $_POST['login'];
 
$sql = "SELECT * FROM `users` WHERE Login="$login" or die ('Erreur : '.mysql_error());
$result = mysql_query($sql);
 
if ($login == $result);
{
echo 'ok';
}
else
{
echo 'pas ok';
}
?>
une idée ?
ça fait des heures que je suis dessus sans succès.
loopback est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/11/2007, 17h43   #2
Membre actif
 
Avatar de fenkys
 
Inscription : octobre 2007
Messages : 157
Détails du profil
Informations personnelles :
Âge : 45

Informations forums :
Inscription : octobre 2007
Messages : 157
Points : 181
Points : 181
Il y a plusieurs problèmes dans ton scripts :
1) mysql_query ne renvoie pas une valeur mais une structure de résultat que tu dois interpreter en utilisant une des fonctions mysql_result, mysql_fetch_array, mysq_fetch_objet (ma préférée), mysql_fetch_row.
2) Il ne faut jamais utiliser un select * dans une requete mais bien specifier les champs requis.
3) Tu ne vérifie pas l'existence des variables $_POST avant de les lire.
4) Ta variable pwd n'est pas utilisée.

Mais seul le premier point est responsable de l'echec de ta procédure
fenkys est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/11/2007, 18h57   #3
Membre régulier
 
Avatar de loopback
 
Inscription : septembre 2006
Messages : 170
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 170
Points : 75
Points : 75
J'ai réécrit le script suivant tes conseils:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
session_start();
require_once "include/connect.inc.php";
 
$login = $_REQUEST['login'];
$pwd = $_REQUEST['pwd'];
 
$req = "SELECT * FROM users WHERE Login='$login' AND Password='$pwd';";
$exec = mysql_query($req);
$result = mysql_fetch_array($exec);
 
if ($result) {
Header ("Location: home.php");
}
else {
include "error3subscribe.php";
}
mysql_close($connect);
?>
et résultat...ça marche
loopback 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 07h08.


 
 
 
 
Partenaires

Hébergement Web