Problème : verifiez si le pseudo est déjà dans ma base de donnée
smiley5555
Messages postés
86
Statut
Membre
-
smiley5555 Messages postés 86 Statut Membre -
smiley5555 Messages postés 86 Statut Membre -
Bonjour tout le monde,
Je fais un site et au niveau de l'inscription je coince sur un petit problème je n'arrive pas a vérifiez si le pseudo est déjà dans ma BDD du coup je peux me retrouvez avec 2 pseudos identique :s
je vous montre mon bout de code qui est censé permettre de verifier ceci :
//on verifie si le pseudo est déjà entré dans la base de donnée ou pas
$login = mysqli_real_escape_string($_POST['peudo']);
$sql = "SELECT COUNT(*) AS nbr FROM membres WHERE pseudo = '".$login."'";
$query = mysql_query($sql);
$assoc = mysql_fetch_assoc($res);
//on l'informe si jamais
if(isset($_POST['pseudo']))
{
if(!($alors['nbr'] == 0))
{
$error_pseudo2 = 'Ce pseudo est déja utilisé.';
}
else
{
$error_pseudo2 = 'Ce pseudo n'est pas utilisé.';
}
else
{
$error = 'vous n'avez pas remplit le champ \'pseudo\'.';
}
Je fais un site et au niveau de l'inscription je coince sur un petit problème je n'arrive pas a vérifiez si le pseudo est déjà dans ma BDD du coup je peux me retrouvez avec 2 pseudos identique :s
je vous montre mon bout de code qui est censé permettre de verifier ceci :
//on verifie si le pseudo est déjà entré dans la base de donnée ou pas
$login = mysqli_real_escape_string($_POST['peudo']);
$sql = "SELECT COUNT(*) AS nbr FROM membres WHERE pseudo = '".$login."'";
$query = mysql_query($sql);
$assoc = mysql_fetch_assoc($res);
//on l'informe si jamais
if(isset($_POST['pseudo']))
{
if(!($alors['nbr'] == 0))
{
$error_pseudo2 = 'Ce pseudo est déja utilisé.';
}
else
{
$error_pseudo2 = 'Ce pseudo n'est pas utilisé.';
}
else
{
$error = 'vous n'avez pas remplit le champ \'pseudo\'.';
}
4 réponses
Bonjour,
je te conseille d'utiliser au minimum les balises code, et au mieux d'utiliser un site comme https://pastebin.com/ pour rendre ton compte le plus lisible possible à ceux qui vont t'aider !!
Dans ton cas avec un code aussi court ça n'est pas dramatique mais c'est une bonne habitude à prendre ;)
Ceci étant dit...
il y a plusieurs soucis dans ton code
Déjà tu fais :
mais tu vérifies la variable $alors['nbr']
en plus, tu fais un ! sur ta condition, ce qui peut rendre ta condition difficile à lire, il vaudrait mieux faire :
Ensuite il manque une 2ème } après le 1er else
et pour terminer, il ne faut pas oublier d'échaper les quote dans tes chaines de caractères sinon tu auras des erreurs de syntaxe :
je te conseille d'utiliser au minimum les balises code, et au mieux d'utiliser un site comme https://pastebin.com/ pour rendre ton compte le plus lisible possible à ceux qui vont t'aider !!
Dans ton cas avec un code aussi court ça n'est pas dramatique mais c'est une bonne habitude à prendre ;)
Ceci étant dit...
il y a plusieurs soucis dans ton code
Déjà tu fais :
$assoc = mysql_fetch_assoc($res);
mais tu vérifies la variable $alors['nbr']
en plus, tu fais un ! sur ta condition, ce qui peut rendre ta condition difficile à lire, il vaudrait mieux faire :
if ($alors['nbr'] != 0)) {
Ensuite il manque une 2ème } après le 1er else
et pour terminer, il ne faut pas oublier d'échaper les quote dans tes chaines de caractères sinon tu auras des erreurs de syntaxe :
$error_pseudo2 = 'Ce pseudo n\'est pas utilisé.'; $error = 'vous n\'avez pas remplit le champ \'pseudo\'.';
<?php
if(isset($_POST['pseudo']))
{
//on verifie si le pseudo est déjà entré dans la base de donnée ou pas
//donc il vaut mieux faire cela seulement après avoir vérifié que le pseudo a été saisi
//et faire la connexion à la BDD avant
//connexion serveur
//selection BDD
//puis
$pseudo = mysqli_real_escape_string($_POST['peudo']);
//si c'est pseudo pourquoi l'appeler login ?
$sql = "SELECT COUNT(*) AS nbr FROM membres WHERE pseudo = '".$pseudo."'";
$query = mysql_query($sql);
$resultat = mysql_fetch_assoc($query); //et la il faut faire le fetch sur la réponse de la requette (tu avait un $res ??)
//on l'informe si jamais
if($resultat['nbr'] > 0))
{
$error_pseudo2 = 'Ce pseudo est déja utilisé.';
}
else
{
$error_pseudo2 = 'Ce pseudo n\'est pas utilisé.';
}
} //il te manquait cette } fermante du if(isset($_POST['pseudo']))
else
{
$error = 'vous n\'avez pas remplit le champ \'pseudo\'.';
}
je pense que plus bas dans tu code tu fais des echo $error_pseudo2 echo $error