Vérifier si un login existe sur une BBD

Fermé
gu-guss Messages postés 70 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 15 octobre 2009 - 26 juil. 2008 à 15:31
 guguss - 21 oct. 2008 à 20:09
Bonjour,
j'voudrais vérifier si un login existe sur ma base de donnée quand l'utilisateur s'enegistre !!!! comme le truc sur le formulaire commentcamarche !!regardez le !

4 réponses

voilà j'ai créé une fonction en js intégré dans du code php:
<?php
//connection à votre BDD
$select=mysql_select_db($base,$connect)or die("Une erreur est apparue lors de la connexion à la base de données");
$res="[";
$req='SELECT login FROM table_membres';
$reqq=mysql_query($req)or die("Erreur:".mysql_error());
$num=mysql_num_rows($reqq);

for ($i=0;$i<$num;$i++)
{
$rows=mysql_fetch_array($reqq);
$res .= '"'.strtolower($rows['login']).'"';
if ($i!=$num-1){$res .=',';}else{$res .=']';}}
echo'<SCRIPT language="javascript">
function login(){
//on rempli un tableau avec les logins qui existent
var login= '.$res.';
var ii = '.$num.';
for (i=0; i<ii; i++){
//formulaire = formulaire,champ du login = login
if (login[i] == document.formulaire.login.value) {
//si le login existe alors on affichera une alerte
alert("le login que vous avez choisi \""+login[i]+"\" existe déjà. \n Veuillez choisir un autre login. Merci !");
var off=0;
var i=ii+1;}
}
if (off!=0) {
//ici pour vérifier le champs login s'il n'y a pas des cartères spéciaux, une espace ou bien nombre de cacar est <5
var form = document.formulaire;
var r = new RegExp("[\<|\>|\ |\"|\'|\%|\;|\(|\)|\&|\+|\-]", "i");
if (form.login.value == "") {
alert( "Saisissez un login." );
} else if ((r.exec(form.login.value)) || (form.login.value.length <5)) {
alert( "Saisissez un Nom d\'utilisateur : valide.\n Au moins 5 caractères, alphanumériques uniquement 0-9,a-z,A-Z, et sans espaces" );}
else {alert("Disponible!");}}}

</SCRIPT>'; ?>


dans la page sous le champs login ou bien vers la fin on met un boutton tester disponibilitée:
<a href="javascript:login();" >teter</a>
4
HostOfSeraphim Messages postés 6750 Date d'inscription jeudi 2 février 2006 Statut Contributeur Dernière intervention 31 juillet 2016 1 607
26 juil. 2008 à 15:40
Je ne vais pas te donner la solution directement pour que tu travailles quand même un peu...

Mais en gros, tu récupères le nom de l'utilisateur, que tu mets dans une variable ; ensuite, tu fais une simple requête sur ta table d'utilisateurs, type "select login from t_utilisateurs where login=leloginproprose"... si tu n'a rien en retour, c'est que le login n'existe pas ; si tu as une ligne en retour, c'est qu'il existe déjà.


0
gu-guss Messages postés 70 Date d'inscription vendredi 25 juillet 2008 Statut Membre Dernière intervention 15 octobre 2009 1
26 juil. 2008 à 15:42
plz la solution :d je ne suis qu'un débutant :d
0
Je recherche la mème chose a part que je souhaite le faire dynamiquement.

En gros lors de la saisie que ça affiche directement à l'utilisateur si ce nom est déja pris sinon j'ai trouvé

//ont stock le login dans une variable pseudo
$pseudo="toto";
//ont inclus le fichiers de connexion à la DB mais ont peux inscrire direct les info dans le script
include "connect.php";
//ont définit la requète SQL dans une variable
$sql="SELECT * FROM users";
$count="0";
$answer = mysql_query($sql)
while ($answer_data = mysql_fetch_array($reponse) )
{
if ($pseudo!=$answer_data):
:
else:
$count=$count+1;
}
if ($count!="0"):
echo "Attention le pseudo que vous désirez est déja pris. Veillez en choisir un autre !";
else:
//requète pour ajouter l'utilisateur
endif;
?>

mais cette solution ne me conviens pas.

D'avance merci

Nibyse
0