Resultat de requète sql sur php !
Résolu
x11r6
Messages postés
353
Date d'inscription
Statut
Membre
Dernière intervention
-
x11r6 Messages postés 353 Date d'inscription Statut Membre Dernière intervention -
x11r6 Messages postés 353 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
N'étant pas très bon programmeur, je suis actuellement confronté à un soucis ! :
je souhaite à l'aide de ce script vérifier d'un utilisateur n'est pas déjà dans la bdd
je fais donc un :
SELECT count(*) FROM users WHERE mail='" . $mail ."
pour compter le nombre de ligne qui comporte c'est adresse
si c'est différent de 0 l'utilisateur est dajà dans la base et je lui demande de s'authentifier
sinon on poursuit le script...
le résultat est stocké dans la variable $result que je teste par if($result<>"0") mais a priori c'est là que sa bloque....enfin je pense....
Une idée ?
code si dessous.
function Verifierusers($mail,$connexion)
{
$requeteuser = "SELECT count(*) FROM users WHERE mail='" . $mail ."'";
$result = ExecRequete ($requeteuser, $connexion);
if($result<>"0")
return true;
else
return false;
}
$adresse=htmlentities($_POST['mail']);
if(Verifierusers($adresse,$connexion))
echo '<p>Vous avez déjà un compte... merci de vous identifier</p>';
exit;
else
echo '<p>Votre adresse est valide.</p>';
$verifuser = Verifierusers ( $_POST[mail],$connexion);
Cordialement
N'étant pas très bon programmeur, je suis actuellement confronté à un soucis ! :
je souhaite à l'aide de ce script vérifier d'un utilisateur n'est pas déjà dans la bdd
je fais donc un :
SELECT count(*) FROM users WHERE mail='" . $mail ."
pour compter le nombre de ligne qui comporte c'est adresse
si c'est différent de 0 l'utilisateur est dajà dans la base et je lui demande de s'authentifier
sinon on poursuit le script...
le résultat est stocké dans la variable $result que je teste par if($result<>"0") mais a priori c'est là que sa bloque....enfin je pense....
Une idée ?
code si dessous.
function Verifierusers($mail,$connexion)
{
$requeteuser = "SELECT count(*) FROM users WHERE mail='" . $mail ."'";
$result = ExecRequete ($requeteuser, $connexion);
if($result<>"0")
return true;
else
return false;
}
$adresse=htmlentities($_POST['mail']);
if(Verifierusers($adresse,$connexion))
echo '<p>Vous avez déjà un compte... merci de vous identifier</p>';
exit;
else
echo '<p>Votre adresse est valide.</p>';
$verifuser = Verifierusers ( $_POST[mail],$connexion);
Cordialement
A voir également:
- Resultat de requète sql sur php !
- Resultat foot - Télécharger - Vie quotidienne
- Easy php - Télécharger - Divers Web & Internet
- Lexer resultat - Télécharger - Sport
- Expert php pinterest - Télécharger - Langages
- Logiciel sql - Télécharger - Bases de données
5 réponses
Je ne sais pas ce que vous entendez par chiffre, et sans contredir le père, à mon sens ceci SELECT count(*) FROM users WHERE mail='" . $mail ." renvoi un entier (0 ou n).
Là si tu veux faire un test par rapport au résultat de la requete tu peux compter le nombre de lignes retournées (mysql_num_rows).
Là si tu veux faire un test par rapport au résultat de la requete tu peux compter le nombre de lignes retournées (mysql_num_rows).
$sql = mysql_query("SELECT COUNT(*) AS Nb FROM TAB); $nbNuplets = mysql_num_rows($sql); $nuplet = mysql_fetch_array($sql); if($nbNuplets > 0){ //ton traitement si vrai }else{ //ton traitement si faux }
c'est quoi l'erreur généré par ton code ?
Juste pour info dans quel contexte utiliser execRequete ? Je connais pas
Juste pour info dans quel contexte utiliser execRequete ? Je connais pas
aucune érreur généré en faite
ExecRequete est un simple script qui execute une requete et renvoi le résultat dans un return.
lorsque j'éffectue cette requete :
SELECT count(*) FROM users WHERE mail='" . $mail ."
le résultat est un chiffre ???
j'ai du mal a l'évaluer...dans if($result<>"0")
cordialement
ExecRequete est un simple script qui execute une requete et renvoi le résultat dans un return.
lorsque j'éffectue cette requete :
SELECT count(*) FROM users WHERE mail='" . $mail ."
le résultat est un chiffre ???
j'ai du mal a l'évaluer...dans if($result<>"0")
cordialement
Bonjour
Non, le résultat d'une requête n'est pas un chiffre, c'est un truc qui s'appelle 'resource'.
Tu t'attends à un seul nombre mais en général, une requête peut renvoyer plusieurs lignes comprenant plusieurs champs ( SELECT champ1, champ2 etc...). C'est pour ça que ce n'est pas un simple nombre.
Tu extrais de cette resource une ligne de résultats grâce à une fonction comme (version mysql)
$ligne = mysql_fetch_row($result);
(si tu avais plusieurs lignes de résultats, tu pourrais les balayer toutes avec une boucle while par exemple, mais toi tu en as une seule)
$ligne obtenu est un tableau. La réponse que tu cherches (ici il y en a une seule car tu SELECT une seule chose) est dans l'indice 0
if($ligne[0] <> 0)
return true;
else
return false;
Non, le résultat d'une requête n'est pas un chiffre, c'est un truc qui s'appelle 'resource'.
Tu t'attends à un seul nombre mais en général, une requête peut renvoyer plusieurs lignes comprenant plusieurs champs ( SELECT champ1, champ2 etc...). C'est pour ça que ce n'est pas un simple nombre.
Tu extrais de cette resource une ligne de résultats grâce à une fonction comme (version mysql)
$ligne = mysql_fetch_row($result);
(si tu avais plusieurs lignes de résultats, tu pourrais les balayer toutes avec une boucle while par exemple, mais toi tu en as une seule)
$ligne obtenu est un tableau. La réponse que tu cherches (ici il y en a une seule car tu SELECT une seule chose) est dans l'indice 0
if($ligne[0] <> 0)
return true;
else
return false;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question