Page 1 sur 1

Effectuer une recherche et afficher !

Posté : 27 déc. 2006, 17:28
par Invité
Bonjour,

Sur mon site,il y a la possibilité de rechercher si un membre existe,j'ai fait ceci pour la recherche :
$reponse_pseudo=mysql_query("SELECT pseudo FROM membres WHERE pseudo='$pseudo'") or die ('Erreur : '.mysql_error());
$count_pseudo=mysql_num_rows($reponse_pseudo);
if($count_pseudo == 0)
	{
	echo'Ce pseudo n\'existe pas ou n\'existe plus.
En principe,si le pseudo rechercher est par exemple "JOHN" et que ce pseudo n'existe pas,je devrait avoir l'echo ci dessus ?

Mais là,non,j'ai donc du me tromper mais ou ?

Merci de votre aide :wink:

Posté : 27 déc. 2006, 17:33
par Ajoloca
Bonjour,

Tu devrais faire afficher les erreurs de PHP.
Tu aurais vu que cette ligne contient une erreur de syntaxe
echo'Ce pseudo n\'existe pas ou n\'existe plus. 
Écris-la comme ceci
echo 'Ce pseudo n\'existe pas ou n\'existe plus.' 

Posté : 27 déc. 2006, 17:40
par Invité
Non,non ! Je n'ai absolument aucune erreur ! Pour la simple et bonne raison que je n'ai pas mi tout le code sur le forum ! Pas d'erreur de syntaxe et autres sql , aucun n'oublie de ' ou ] ou autre signe !

Merci quand même :wink:

Je pense que le problème vient d'ici :
if($count_pseudo == 0)

Posté : 27 déc. 2006, 17:42
par Ajoloca
Fais un echo avant ton test.

Posté : 27 déc. 2006, 17:52
par Invité
Je vient de faire cela et j'ai absolument rien !

Il n'y a aucune erreur sql,juste une erreur dans la recherche !

Parce que si je met
if($count_pseudo == 0)
La recherche se poursuit mais sans en tenir compte ! et si je met ==1 , il me bloque avec mon echo !

Posté : 27 déc. 2006, 18:29
par tinou
pourquoi tu ne testerais pas un mysql_fetch_array a la place de ton mysql_num_rows

Ainsi tu auras ton(tes) resultat(s) dans un tableau, ce qui est plus facile a gérer
$var=mysql_fetch_array($resultat)
i=0
for($i=0;$i<=$var.length();$i++)
{
    $var[$i].........
}
essaie qque chose comme cela avec ton code correspondant

Posté : 27 déc. 2006, 18:49
par Ajoloca
Re,
Essaie avec ceci
$reponse_pseudo=mysql_query("SELECT count(pseudo) AS existe FROM membres WHERE pseudo='$pseudo'") or die ('Erreur : '.mysql_error());
$count_pseudo=mysql_result($reponse_pseudo, 0, 0);
if($count_pseudo == 0)
    {
    echo 'Ce pseudo n\'existe pas ou n\'existe plus.'