Humanbomb Posté 9 Mars 2008 Posté 9 Mars 2008 (modifié) Salut tous le monde, J'ai développé un script pour que les utilisateurs s'inscrivent sur le site qui envoie les données dans la bdd avec un id automatique, un pseudo, un mdp, et un email, mais je me suis aperçu que deux personnes peuvent avoir le même pseudo, il faut avouer que c'est un peu génant :!:. Je cherche la modification à apporter à mon script. Mon script (PHP) : CODE <?phpif(isset($_POST['pseudo'])) $pseudo=$_POST['pseudo']; else $pseudo=""; if(isset($_POST['mdp'])) $mdp=$_POST['mdp']; else $mdp=""; if(isset($_POST['email'])) $email=$_POST['email']; else $email=""; if(empty($pseudo) OR empty($mdp) OR empty($email)) { echo '<font color="red">Attention, aucun champs peut rester vide !</font>'; } else { include('connect.php'); $sql = "INSERT INTO tbl_user(id, login, mdp, email) VALUES('','$pseudo','$mdp','$email')"; mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); echo 'Votre inscription à été réalisé avec succée.'; include('connexion.php'); mysql_close(); } ?> Donc voila je fais appelle à vous Modifié 9 Mars 2008 par Portekoi Modo : Merci d'utiliser la balise "codebox" pour les codes longs
Portekoi Posté 9 Mars 2008 Posté 9 Mars 2008 Bonsoir, Avant le Insert, fais : <?$sql = "select 1 from tbl_user where login = '".$login."'";$requete = mysq_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());//Si on ne trouve pas ce pseudo dans la base...if mysql_num_rows($requete) == 0{//Ton code de création}else{//Ton code en cas de doublon}?> Je suis un peu rouillé en PHP, doit peut être y avoir une erreur mais le principe y est
Humanbomb Posté 9 Mars 2008 Auteur Posté 9 Mars 2008 (modifié) $requete = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); tu as fait une legere erreur je test et je reposte la réponse ---------------------------------------------------------------------------------------------------- Pour éviter le double post J'ai une erreur : Parse error: syntax error, unexpected T_STRING, expecting '(' in H:\serveur\PortableZMWS-0.8.15-fr-r01\PortableZMWS\ZMWS\_web.zmwsc\site\add.php on line 26 Modifié 9 Mars 2008 par Humanbomb
Humanbomb Posté 9 Mars 2008 Auteur Posté 9 Mars 2008 $requete = mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); tu as fait une legere erreur je test et je reposte la réponse ---------------------------------------------------------------------------------------------------- Pour éviter le double post J'ai une erreur : Parse error: syntax error, unexpected T_STRING, expecting '(' in H:\serveur\PortableZMWS-0.8.15-fr-r01\PortableZMWS\ZMWS\_web.zmwsc\site\add.php on line 23 <?phpif(isset($_POST['pseudo'])) $pseudo=$_POST['pseudo'];else $pseudo="";if(isset($_POST['mdp'])) $mdp=$_POST['mdp'];else $mdp="";if(isset($_POST['email'])) $email=$_POST['email'];else $email="";if(empty($pseudo) OR empty($mdp) OR empty($email)){echo '<font color="red">Attention, aucun champs peut rester vide !</font>';}else{include('connect.php');$sql = "select 1 from tbl_user where login = '".$login."'";$requete = mysq_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());//Si on ne trouve pas ce pseudo dans la base...if mysql_num_rows($requete) == 0{//Ton code de création}else{echo 'Pseudo déja utilisé'}$sql = "INSERT INTO tbl_user(id, login, mdp, email) VALUES('','$pseudo','$mdp','$email')";mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());echo 'Votre inscription à été réalisé avec succée.';include('connexion.php');mysql_close();}?>
Portekoi Posté 9 Mars 2008 Posté 9 Mars 2008 Remplace ca : if mysql_num_rows($requete) == 0 par ca : if (mysql_num_rows($requete) == 0)
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant