Verifier qu'un pseudo existe dans une BDD

Résolu/Fermé
Utilisateur anonyme - 27 mai 2008 à 20:43
 Utilisateur anonyme - 28 mai 2008 à 13:01
Bonjour,
J'ai fait un nouveau site, il y a pas longtemps, sur lequel on peut s'inscrire, et je me suis rendu compte que lors d'un inscription j'avais pas fait la verification du psuedo qui serait deja enregistré dans la BDD (ce qui fait qu'on peut s'approprier le compte de quelqu'un, en s'inscrivant sous le meme pseudo et en changeant le mot de passe)

J'ai donc voulu faire la verification mais ca ne marche pas. Soit le pseudo existe toujours (meme si c'est pas reellement le cas) soit il existe pas (alors qu'en fait il existe reellement). Voila un morceu du code:

//LES FONCTION DE CONNEXION A LA BDD SONT ICI NORMALEMENT

$Mot_de_passe = md5($_POST["passe"]);
$Login = strip_tags(mysql_real_escape_string($_POST["login"]));

//donc la, la verification:
$resultat = mysql_query('SELECT FROM inscription WHERE login="'.$Login.'"');

//si le pseudo existe oas:
if(!empty($resultat))
{
mysql_query("INSERT INTO inscription VALUES('','$Login','$Mot_de_passe')");
echo('Vous êtes inscrit à **** Vous pouvez dès maintenant ****');
}

//sinon
else
{
echo('Le psuedo que vous avez choisi est déjà prit');
}
A voir également:

2 réponses

sly-bzh Messages postés 415 Date d'inscription jeudi 10 janvier 2008 Statut Membre Dernière intervention 5 décembre 2009 118
28 mai 2008 à 01:05
Bonsoir,

Tout d'abord sache que c'est quand même une faute assez grave que tu as faites là... Mais bon s'pas grave :)

Effectivement ce test if(!empty... ne marche pas.
Par contre tu peux compter le nombre de réponse que te donne ta requête.
Par exemple :
$Mot_de_passe = md5($_POST["passe"]);
$Login = strip_tags(mysql_real_escape_string($_POST["login"]));

//donc la, la verification:
$resultat = mysql_query('SELECT FROM inscription WHERE login="'.$Login.'"');
$test = mysql_num_rows($resultat);

//si le pseudo existe oas:
if($test==0) //Tu pourrais également prendre if($test!=1)... Mais étant donné 
//qu'apparemment tu peux avoir plus de 1 login identique... 
{
mysql_query("INSERT INTO inscription VALUES('','$Login','$Mot_de_passe')");
echo('Vous êtes inscrit à **** Vous pouvez dès maintenant ****');
}

//sinon
else
{
echo('Le psuedo que vous avez choisi est déjà prit');
}
3
Utilisateur anonyme
28 mai 2008 à 13:01
ok merci
0