Bonjour,
Je suis débutant en php, et j'ai de la misère à récupérer sur ma base de donnée mysql les informations inscrits dans mon formulaire, ex: dans mon menu déroulant (formulaire) j'ai le nom du champs qui est La_couleur et dans ce champs là j'ai mon menu déroulant, ex:( noir, vert,rouge....).Problème, aulieu de recevoir sur ma bdd le nom de la couleur choisi par l'utilisateur je reçoi à la place le numéro de l'ordre du choix ex:(le chiffre 3 à la place de rouge eu 2 à la place de vert!!je ne comprend pas pourquoi???
SVP, y'a t-il quelqu'un qui sera gnnereux pour m'aider à résoudre ce truc là??
je travail sur wXP
Voici mon code de formulaire:))
<?
// Paramètres persos
$host = "localhost";
$user = "??";
$pass = "??";
$bdd = "liquidationrapid_jeux_video"; // nom de la BD
// connexion
@mysql_connect($host,$user,$pass)
or die("Impossible de se connecter");
@mysql_select_db("$bdd")
or die("Impossible de se connecter");
?>
<?php
$list['f_7']=array("Sélectionnez","Model A1","Model A2","Model A3","Model A4","Model A5","Model A6","Model A7","Model A8","Pêle-Mêle(Mélange de toutes les sortes)");
$list['f_8']=array("Unité","Palette","Camion","Autre");
$list['f_9']=array("Sélectionnez","Noir et Marron","Blanche et Marron","Blanche et Noir","Indifferent");
$list['f_10']=array("7 à 13","7 à 11","7 à 10");
if(isset($_POST['submit'])){
$erreur="";
}
// Verification des champs
if(strlen($f_1)<2){
$erreur.="<li><span class='txterror'>Le champ « Nom » est vide ou incomplet.</span>";
$errf_1=1;
}
if(strlen($f_2)<2){
$erreur.="<li><span class='txterror'>Le champ « Prenom » est vide ou incomplet.</span>";
$errf_2=1;
}
if(strlen($f_3)<2){
$erreur.="<li><span class='txterror'>Le champ « Mail » est vide ou incomplet.</span>";
$errf_3=1;
}else{
if(!ereg('^[-!#$%&\'*+\./0-9=?A-Z^_`a-z{|}~]+'.
'@'.
'[-!#$%&\'*+\/0-9=?A-Z^_`a-z{|}~]+\.'.
'[-!#$%&\'*+\./0-9=?A-Z^_`a-z{|}~]+$',
$f_3)){
$erreur.="<li><span class='txterror'>La syntaxe de votre adresse e-mail n'est pas correcte.</span>";
$errf_3=1;
}
}
if(strlen($f_5)<2){
$erreur.="<li><span class='txterror'>Le champ « Code postal » est vide ou incomplet.</span>";
$errf_5=1;
}
if($f_7==0){
$erreur.="<li><span class='txterror'>Le champ « Itème » n'a pas été défini.</span>";
$errf_7=1;
}
if($f_8==""){
$erreur.="<li><span class='txterror'>Le champ « Catégorie » n'a pas été défini.</span>";
$errf_8=1;
}
if($f_9==0){
$erreur.="<li><span class='txterror'>Le champ « La couleur » n'a pas été défini.</span>";
$errf_9=1;
}
if($f_10==""){
$erreur.="<li><span class='txterror'>Le champ « La grandeur » n'a pas été défini.</span>";
$errf_10=1;
}
if($erreur==""){
// Création du message
$titre="Message de votre site";
$tete="From:Site@W4.pages-web.com/liquidationrapide.com/formulaire.php\n";
$corps.="Nom : ".$f_1."\n";
$corps.="Prenom : ".$f_2."\n";
$corps.="Mail : ".$f_3."\n";
$corps.="Adresse : ".$f_4."\n";
$corps.="Code_postal : ".$f_5."\n";
$corps.="Téléphone : ".$f_6."\n";
$corps.="Itème : ".$list['f_7'][$f_7]."\n";
$corps.="Catégorie : ".$list['f_8'][$f_8]."\n";
$corps.="La_couleur : ".$list['f_9'][$f_9]."\n";
$corps.="La_grandeur : ".$list['f_10'][$f_10]."\n";
$corps.="Précisions : ".$f_11."\n";
if(mail("labh123@hotmail.com", $titre, stripslashes($corps), $tete)){
$ok_mail="true";
}else{
$erreur.="<li><span class='txterror'>Une erreur est survenue lors de l'envoi du message, veuillez refaire une tentative.</span>";
}
}
}
//insertion dans la bdd
$table="formulaire";
$query ="INSERT INTO $table(Nom , Prenom, Mail, Adresse, Code_postal , Téléphone, Itème, Catégorie, La_couleur, La_grandeur, Précisions)";
$query .= " VALUES('$f_1','$f_2','$f_3','$f_4','$f_5','$f_6','$f_7','$f_8','$f_9','$f_10','$f_11')";
// Exécution de la requête
$result = mysql_query($query);
// on ferme la connexion :
mysql_close(); // Déconnexion de MySQL
?>
Je n'ai pas testé ton code, mais un champ de type 'select' (liste déroulante) retourne la valeur et nom ce qui est affiché.
Dans ton code, tu renvoi dans 'value' la variable id$, qui contient le nombre de la position (boucle) et non le texte :
Merci pour la reponse Bo0st , j'ai essayé de faire ce que tu m'a expliqué.... ça marche pour le chmps Itème et catégorie, j 'ai l'info sur ma base de donné par contre la couleur et la grandeur c'esttjrs pareil( j'en ai que des chiffre au lieu du texte) en plus de ça mon formulaire n'est plus cappable de m'envoyé en meme temps des e_mail....j'espere bien expliquer mon cas! merci encore pour la réponse
N.B: je t'ai pas répondu vite car mon ordi a planté Désolé!
Bonjour Bo0st, j'ai finalement étais cappable de recevoir les infos sur ma base de données comme tu m'avais explique...par contre lorsque je reçois un e-mail par mon formulaire j'ai plus les info necessaire...exp(pour la couleur y'a pas de choix indiqué...la grandeur non plus...) peut-tu m'expliquer pourquoi et comment puis-je faire pour m'en sortir svp.
22 sept. 2009 à 15:09
N.B: je t'ai pas répondu vite car mon ordi a planté Désolé!
24 sept. 2009 à 03:08
22 mars 2012 à 15:47
j'ai le meme probleme que toi
as tu trouve une solution?
merci