Vérifier si un pseudo existe!

Signaler
Messages postés
6
Date d'inscription
vendredi 29 février 2008
Statut
Membre
Dernière intervention
17 mars 2008
-
 saima1990 -
Voila le probléme:


Je veux vérifier si le pseudo que le visiteur à tapez existe déjà dans
ma base de donnée ou pas. S'il existe, on affiche quelque chose et s'il
existe pas on affiche autre chose. Mais quand je test mon code avec un
pseudo qui existe déjà dans ma base de donnée, il m'affiche la même
phrase que qu'en le pseudo n'existe pas.


Je pense que l'erreur vient de la requête, mais je ne la trouve pas. Pourriez vous m'aider?


Voila mon code :

<?php

$pseudo="<script>document.write(pseudo);</script>";

mysql_connect("localhost","root","");

mysql_select_db("test");

                 

// ON VERIFIE SI LE PSEUDO EST DANS LA TABLE
$res  mysql_query("SELECT COUNT(*) AS nbr FROM questionnaire WHERE pseudo'$pseudo'");

$alors  = mysql_fetch_assoc($res);

// UNE BOUCLE POUR INFORMER L'UTLISATEUR

if(isset($pseudo)){

if(!($alors['nbr'] == 0)){

echo"Ce pseudo est déjà utilisé !";

}else{

echo"Ce pseudo n'a jamais été utilisé";

}

}

mysql_close();

?>
A voir également:

12 réponses

Messages postés
962
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
2 août 2010
1
Salut,

Euh je comprends pas cette partie la : $pseudo="<script>document.write(pseudo);</script>";

C'est du javascript, hors toi tu es dans un script php tu ne peux pas avoir une valeur comme cela... $pseudo = $_POST['pseudo'] serait plus approprié je suppose (j'ai pas vu ton formulaire alors je peux pas être certain).

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
Messages postés
6
Date d'inscription
vendredi 29 février 2008
Statut
Membre
Dernière intervention
17 mars 2008

Enfaite le visiteur rentre son pseudo via un prompt en javascript. La seul façon que j'ai trouvé pour récupérer et utiliser la valeur du pseudo en php c'est sa :  $pseudo="<script>document.write(pseudo);</script>"; Ainsi si je veux afficher le pseudo que le visiteur à tapé dans le prompt en php j'ai plus qu'a mettre echo $pseudo; Mais quand j'arive a ma requête, PHP comprend que le pseudo que je cherche dans ma base de donnée est '$pseudo' est non pas la valeur de cette variable.

En gros voila ce que je veux faire :

Si on tape mouche dans le prompt en javasript, on cré donc une variable var pseudo qui aura comme valeur moucheen javasript que l'on va récupérer en php ($pseudo="<script>document.write(pseudo);</script>";)pour traiter l'info dans une base de donnée. Ce que je n'arive pas à faire c'est de dire à SQL que je cherche la valeur de la variable, c'est à dire 'mouche' est non pas '$pseudo'.

J'éspére que je me suis bien expliqué
Messages postés
943
Date d'inscription
mardi 14 novembre 2006
Statut
Membre
Dernière intervention
7 août 2009
3
En faite, il faudrait que tu utilise des formulaire en html pour pouvoir faire ce que tu veux faire...

Un petit lien

Il te faut crée donc un formulaire (form) avec un input de type text. regarde déjà un peu ça.


Messages postés
6
Date d'inscription
vendredi 29 février 2008
Statut
Membre
Dernière intervention
17 mars 2008

ok mais comment faire pour que le formulaire s'affiche comme un msg d'alerte ou comme l'évenement prompt.

Par ailleur, j'ai trouvé pourquoi SQL ne trouvé pas la valeur 'mouche' car en faite dans la requête elle me cherche la valeur '<script>document.write(pseudo);</script>'. Pourtant si je fait echo $pseudo; j'ai belle est bien 'mouche' et non pas '<script>document.write(pseudo);</script>'. Alors ma question est simple. Pourquoi dans ma page php ma variable='mouche' et dans ma requête ma variable ='<script>document.write(pseudo);</script>' ?
Messages postés
962
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
2 août 2010
1
Salut,

Je te l'ai dit la façon que tu fais ça , ça ne peut PAS fonctionner, javascript s'execute chez le client et php sur le serveur, il faut que ton script javascript envoit le pseudo au script php....

Du javascript du genre:

<form action="?" method="GET" name="formulaire">

</form>
<script language="JavaScript" type="text/javascript">
                Pseudo = window.prompt("Votre pseudo?",'');
                if(Pseudo) {
                        document.formulaire.pseudo.value = Pseudo;
                        document.formulaire.submit();
                        }
</script>

<?php
if (isset($_GET['pseudo']))
{

[c.aspx?u=aHR0cDovL3d3dy5waHAubmV0L215c3FsX2Nvbm5lY3Q= mysql_connect]();
}

?>

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
Messages postés
943
Date d'inscription
mardi 14 novembre 2006
Statut
Membre
Dernière intervention
7 août 2009
3
Désolée j'avais pas compris qu'il fallait obligatoire un prompt.

Tu as mouche quand tu fais un echo car sur un pageil va executer le script alors que dans ta requète il n'executera pas le code et donc gardera '<script>document.write(pseudo);</script>'

Je ne sais pas trop comment t'expliquer ça est-ce que tu as compris ce que je veux dire?

C'est une des raison pour laquelle je te proposais de faire un formulaire...


Messages postés
962
Date d'inscription
samedi 19 janvier 2002
Statut
Membre
Dernière intervention
2 août 2010
1
Bon la saletée de textbox évolué déconne encore.... voici le script qui aurait dû apparaitre dans mon messgage précédent:

<form action="?" method="GET" name="formulaire">

</form>
<script language="JavaScript" type="text/javascript">
                Pseudo = window.prompt("Votre pseudo?",'');
                if(Pseudo) {
                        document.formulaire.pseudo.value = Pseudo;
                        document.formulaire.submit();
                        }
</script>
<?php
if (isset($_GET['pseudo']))
{
mysql_connect("localhost","root","");
mysql_select_db("test");
$pseudo= mysql_real_escape_string($_GET['pseudo']);

// ON VERIFIE SI LE PSEUDO EST DANS LA TABLE$res  mysql_query("SELECT COUNT(*) AS nbr FROM questionnaire WHERE pseudo'$pseudo'");
$alors  = mysql_fetch_assoc($res);
// UNE BOUCLE POUR INFORMER L'UTLISATEUR
if(!($alors['nbr'] == 0)){
echo"Ce pseudo est déjà utilisé !";
}else{
echo"Ce pseudo n'a jamais été utilisé";
}
mysql_close();
}
?>

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
Messages postés
6
Date d'inscription
vendredi 29 février 2008
Statut
Membre
Dernière intervention
17 mars 2008

Merci pour toutes ces précisions yoman64, le code fonctionne correctement. Cela dit comment faire maintenant pour répéter le formulaire tant que le visiteur n'aura pas entrer de pseudo?
Messages postés
6
Date d'inscription
vendredi 29 février 2008
Statut
Membre
Dernière intervention
17 mars 2008

Comme je l'ai dit plus haut, j'aimerais s'avoir comment faire pour répéter le fonctionnaire si le pseudo entrer est vide ou bien si la valeur est null. Car si le visiteur clique sur ok avec un champ vide ou bien s'il clique sur annuler, on arrive sur une page blanche et non pas sur la page cible indiquer sur le formulaire.Merci pour votre aide!
Messages postés
943
Date d'inscription
mardi 14 novembre 2006
Statut
Membre
Dernière intervention
7 août 2009
3
Regarde du coté de header("location:nom_de_page") je suis pas sur de la synthaxe. Après il te faudra surement ajouter un timeout enfin que la redirection se fasse au bout d'un certain nombre de seconde mais ça je ne sais pas faire...

<hr width="100%" size="2" />
Messages postés
6
Date d'inscription
vendredi 29 février 2008
Statut
Membre
Dernière intervention
17 mars 2008

Grâce à votre aide j'ai enfin trouvé le code parfait pour réaliser ce que je voulait faire.
Voici le code final :

             <form action="bilan.php" method="GET" name="formulaire">
            
             </form>
                      
             <script language="JavaScript" type="text/javascript">
             var Pseudo = window.prompt("Votre pseudo?","");
             document.formulaire.pseudo.value = Pseudo;
             switch(Pseudo)
             {
             case null :
             alert('Vous n\'avez pas entrez de pseudo');
             Pseudo = false;
             break;
             
             case '' :
             alert('Vous n\'avez pas entrez de pseudo');
             Pseudo = false;
             break;
             
             default :
             document.formulaire.submit();
             }
             
             while(!Pseudo)
             {
             var Pseudo = window.prompt("Votre pseudo?","");
             document.formulaire.pseudo.value = Pseudo;
             switch(Pseudo)
             {
             case null :
             alert('Vous n\'avez pas entrez de pseudo');
             Pseudo = false;
             break;
             
             case '' :
             alert('Vous n\'avez pas entrez de pseudo');
             Pseudo = false;
             break;
             
             default :
             document.formulaire.submit();
             }
             }
             </script>
    

Merci à tout le monde.
bjr, je veux vérifier l’existence d'un utilisateur avant le supprimer voila mon code.quand je tape un utilisateurn inexistant il affiche ca La suppression a ete correctement effectuee.:/
<?php
if (!$link = mysql_connect('localhost:3306', 'root', ''))
{
echo 'Connexion impossible à mysql';
exit;
}
if (!mysql_select_db('parc_informatique', $link))
{
echo 'Sélection de base de données impossible';
exit;
}
$matricule= $_GET["matricule"] ;
$requete = ('SELECT * FROM utilisateur WHERE matricule= "'.$matricule.'" ');
$resultat = mysql_query ($requete, $link);
if ($resultat)
{
//requête SQL:
$sql = ('DELETE FROM utilisateur WHERE matricule=" '.$matricule.' " ');
$req = mysql_query( $sql, $link) ;
if($req)
{
echo('La suppression a ete correctement effectuee') ;
}

else
{echo ('utilisateur introuvable');}
}
exit;

?>
svp aidez moi c urgent