Inserer si le pseudo n'existe pas

Résolu/Fermé
roxanne - 31 mai 2013 à 12:11
JooS Messages postés 2465 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 8 juin 2016 - 4 juin 2013 à 00:03
Bonjour,
je suis sur un truc tout bete et je me creuse la tete depuis plus d'une heure sans trouver de reponse .... J'aimerais faire une insertion dans ma base de donnée sauf si le pseudo existe deja dans la base de donnée. L'insertion dans la table fonctionne c'est pourquoi je ne vous donne que ce qui concerne le reste. Voilà où j'en suis :
$pseudo=$_POST['nom'];
			$mdp=$_POST['mdp'];
			$cnx = new PDO(DSN, LOGIN, PASSWORD, $options);
			if($pseudo != $exist="SELECT pseudo FROM compte NOT IN (SELECT pseudo FROM compte)"){
			if($pseudo != "" && $mdp != "" ){
			try{
			
			$sql = "INSERT INTO compte(pseudo, mdp) VALUES('$pseudo', '$mdp')";

<form method="post" action="ajoutadmin.php" enctype="multipart/form-data">
			Nom de connexion: <input type="text" name="nom" style="margin-left:7px;" /><br />
			Mot de passe : <input type="password" name="mdp" style="margin-left:10px;"/><br />
		<input type="submit" value="Enregistrer" /> <input type="reset" value="Effacer" /></p><br /><br /></form>


A voir également:

1 réponse

reverb94 Messages postés 106 Date d'inscription jeudi 7 mars 2013 Statut Membre Dernière intervention 7 janvier 2014 1
31 mai 2013 à 12:57
Si j'ai bien compris tu souhaite ( par exemple ) que si le membre se trouve déjà connecté et qu'il a déjà son information complété 'pseudo'(par exemple) il ne puisse plus ré accéder au même champs ?

Alors dans ce cas la :

<?php if(isset($_SESSION['membre_pseudo'])) { ?>

<form method="post" action="ajoutadmin.php" enctype="multipart/form-data">
			Nom de connexion: <input type="text" name="nom" style="margin-left:7px;" /><br />
			Mot de passe : <input type="password" name="mdp" style="margin-left:10px;"/><br />
		<input type="submit" value="Enregistrer" /> <input type="reset" value="Effacer" /></p><br /><br /></form>

<?php  }
else
{
	echo '<p class="taclass">'."Vous avez déjà complété ces informations".'</p>';
}
?>


Voilà ^^
0
Non pardon je me suis mal exprimer (cela dit merci d'avoir ecrit tout le code ^^) je voudrais ajouter des administrateurs dans ma base de donnee mais je voudrais qu'on m'en emepche quand le pseudo que j'ai choisi est deja présent dans la base de donnée
0
JooS Messages postés 2465 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 8 juin 2016 228
31 mai 2013 à 22:27
Salut,

Tu as donc de façon de faire, le mieux c'est de les utiliser ensmbles !

1 - Ajouter un index "UNIQUE" au champs "pseudo" dans ta table "compte".
En faisant ainsi, a chaque insertion, le SGBD vérifie si la valeur du pseudo entré n'existe pas déjà, si c'est le cas, alors une erreur et renvoyé.

2 - Tout simplement, faire un SELECT avant d'insérer, tu vérifie si le pseudo existe déjà.
0
Merci !
0
JooS Messages postés 2465 Date d'inscription mardi 22 janvier 2008 Statut Membre Dernière intervention 8 juin 2016 228
4 juin 2013 à 00:03
de rien :) !

Rectification : deux façons* lol
0