Page 1 sur 1

vérif dans la base de donnée et message d'erreur

Posté : 04 juil. 2005, 10:27
par Yam
Bonjour,
J'aurais voulu savoir comment vérifier après un formulaire que les champs récupérés n'existent pas deja dans la table de la BDD, et mettre un message d'erreur du style : "Ce champ existe dèjà. Veuillez en saisir un autre."
Merci

Posté : 04 juil. 2005, 10:34
par ouckileou
si par exemple tu récupères un login, lors d'une inscription, tu peux utiliser COUNT(*)
// variable récupérée du formulaire
$login = "toto";

$requete = "SELECT COUNT(*) AS nb_fiche FROM fiches WHERE login = '".$login."'";
$exec = mysql_query($requete);
$resultat = mysql_fetch_array($exec);

$nb_fiche = $resultat["nb_fiche"];

if ($nb_fiche > 0) {
   echo "Ce login est déjà pris";
}
et voilà

Posté : 04 juil. 2005, 10:35
par robined
si tu travailles sur une clé primaire, l'insertion ne marchera pas et si tu indiques
 or die(mysql_error())
apres ton
mysql_query()
, il t'indiquera si tu as un duplicata pour la clé.

si tu travailles sur des champs autres que primaires, tu fais simplement un:
select * from tatable where `tonchamp`='tavaleur'
et ensuite, tu recuperes le nombre d'enregistrement récupérés avec
$nombre=mysql_num_rows($tonresult)
si ce nombre est superieur à 0, tu as déja un enregistrement dans ta table.

Posté : 04 juil. 2005, 16:35
par Yam
merci je vais essayer de faire avec vos conseils :)