contrôle de l'existence d'une valeur dans une table

  • Créateur du sujet Créateur du sujet Halbert
  • Date de début Date de début
A

Anonyme

Invité
Je dois faire une bêtise énorme ! je veux vérifier si le nom rentré par un utilisateur est déjà dans la table :

$requete = "SELECT * FROM Table WHERE Nom LIKE '$nom')";

$resultat = mysql_query ($requete, $connexion);

if ($resultat)
{
echo 'Vous êtes déjà inscrit';
exit;
}

else
{
...}

Quoique je tape, il est retourné "Vous êtes déjà inscrit"
J'ai peur que la réponse soit triviale !
Albert
 
et après le "else", vous mettez quoi ? s'il est pas inscrit, vous l'envoyez vers une autre page php ?
 
Essaye ça plutôt :
if(mysql_numrows($resultat) > 0)
Parce que un résultat même vide est un résultat quand même.

curieux ça devrait marcher :

Fatal error: Call to undefined function msql_numrows()

j'ai aussi essayé if(msql_numrows($resultat, $connexion) > 0)

Albert
 
et si vous testez
while($row=mysql_fetch_row($resultat)){
 
[Edit] cool.
à mon avis, c'est le "if" au lieu du "while".
 
[Edit] cool.
à mon avis, c'est le "if" au lieu du "while".

oui oui pas de problème. Ca a toujours bien enregistré les entrées. j'avais défini le code comme unique ce qui empêchait d'utiliser deux fois le m^me code. Mais du coup un utilisateur connaissait l'existence d'un code déjà existant. Je voulais simplement éviter les doublons sur le nom.
je ne sais pas si je suis clair
Alabert

---------- Nouveau message ajouté à 22h59 ---------- Le message précédent a été envoyé à 22h55 ----------

et si vous testez
while($row=mysql_fetch_row($resultat)){
Est-ce vous pouvez m'expliquer la fonction ?
Albert
 
la fonction while ?

 
while que tant qu'il trouve pas que le nom saisi correspond à une ligne de la table mysql, il continue de vérifier à la ligne suivante.
 
while que tant qu'il trouve pas que le nom saisi correspond à une ligne de la table mysql, il continue de vérifier à la ligne suivante.

ah ok : test sur la cellule 1 si il y a un resultat sino teste sur la 2 etc...
Merci
Alabert

---------- Nouveau message ajouté à 23h46 ---------- Le message précédent a été envoyé à 23h44 ----------

Je dois faire une bêtise énorme ! je veux vérifier si le nom rentré par un utilisateur est déjà dans la table :

$requete = "SELECT * FROM Table WHERE Nom LIKE '$nom')";

$resultat = mysql_query ($requete, $connexion);

if ($resultat)
{
echo 'Vous êtes déjà inscrit';
exit;
}

else
{
...}

Quoique je tape, il est retourné "Vous êtes déjà inscrit"
J'ai peur que la réponse soit triviale !
Albert

Damned : la faille doit être cette ) inutile !
Je vous ai dérangé pour rien !
Mille excuses confuses
Albert
 
ah oui, ici '$nom')"; ?
votre code fonctionne comme vous l'aviez écrit sans la parenthèse ?