Récupérer sur ma base de donnée mysql les in

Fermé
havana - 21 sept. 2009 à 15:00
 havana - 22 sept. 2009 à 14:58
Bonjour,


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
?>








<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title> Centre de Liquidation et de destockage de produits de qualité!</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" media="screen" type="text/css" title="test1" href="test1.css" />
<style type="text/css" media="screen"><!--
INPUT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
SELECT { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
TEXTAREA { color: #000; font-size: 11px; font-family: verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular; background-color: #EEEEEE }
.txterror { color: black; font-size: 11px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
.txtform { color: black; font-size: 12px; font-family: Verdana, Arial, Helvetica, Geneva, Swiss, SunSans-Regular }
--></style>

</head>

<body>

<? if($ok_mail=="true"){ ?>
<table width='100%' border='0' bgcolor='#fcdd7f' cellspacing='1' cellpadding='1'>
<tr><td><span class='txtform'><font color='green'>Le message ci-dessous nous a bien été transmis, et nous vous en remercions.</span></td></tr>
<tr><td> </td></tr>
<tr><td><tt><?echo nl2br(stripslashes($corps));?></tt></td></tr>
<tr><nbsp;</td></tr>
<tr><td><span class='txtform'><font color='green'>Nous allons y donner suite dans les meilleurs délais.<br>A bientôt.</span></td></tr>
</table>
<? }else{ ?>
<form action='<? echo $PHP_SELF ?>' method='post' name='Form'>
<table width='100%' border='0' cellspacing='1' cellpadding='1'>
<? if($erreur){ ?><tr><td colspan='2' bgcolor='red'><span class='txterror'><font color='red'><b> ERREUR, votre message n'a pas été transmis</b></font></span></td></tr><tr><td colspan='2'><ul><?echo$erreur?></ul></td></tr><?}?>
<tr><td colspan='2'><span class='txterror'><font color='blue'><h3>Formulaire de réservation</h3>Les champs marqué d'un * sont obligatoires</span></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Nom* :</span></td><td><input type='text' style='width:200 <?if($errf_1==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_1' value='<?echo stripslashes($f_1);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Prenom* :</span></td><td><input type='text' style='width:200 <?if($errf_2==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_2' value='<?echo stripslashes($f_2);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Mail* :</span></td><td><input type='text' style='width:200 <?if($errf_3==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_3' value='<?echo stripslashes($f_3);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Adresse :</span></td><td><input type='text' style='width:200 <?if($errf_4==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_4' value='<?echo stripslashes($f_4);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Code_postal* :</span></td><td><input type='text' style='width:200 <?if($errf_5==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_5' value='<?echo stripslashes($f_5);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Téléphone :</span></td><td><input type='text' style='width:200 <?if($errf_6==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_6' value='<?echo stripslashes($f_6);?>' size='24' border='0'></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Itème* :</span></td><td><select style='width:200 <?if($errf_7==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_7' size='1'>
<? for($id=0;$id<count($list['f_7']);$id++){
if($id==$f_7){$ct="selected";}
print("<option ".$ct." value=".$id.">".$list['f_7'][$id]."</option>");
unset($ct);
}?>
</select></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Catégorie* :</span></td><td>
<table border='0' cellspacing='0' cellpadding='0'>
<? for($id=0;$id<count($list['f_8']);$id++){
if($id==$f_8){$ct="checked";}
print("<tr><td><input ".$ct." type='radio' name='f_8' value=".$id." border='0'></td><td><span class='txtform'>".$list[f_8][$id]."</span></td></tr>");
unset($ct);
}?>
</table>
</td></tr>
<tr><td align='right' width='30%'><span class='txtform'>La_couleur* :</span></td><td><select style='width:200 <?if($errf_9==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_9' size='1'>
<? for($id=0;$id<count($list['f_9']);$id++){
if($id==$f_9){$ct="selected";}
print("<option ".$ct." value=".$id.">".$list['f_9'][$id]."</option>");
unset($ct);

}?>
</select></td></tr>
<tr><td align='right' width='30%'><span class='txtform'>La_grandeur* :</span></td><td>
<table border='0' cellspacing='0' cellpadding='0'>
<? for($id=0;$id<count($list['f_10']);$id++){
if($id==$f_10){$ct="checked";}
print("<tr><td><input ".$ct." type='radio' name='f_10' value=".$id." border='0'></td><td><span class='txtform'>".$list[f_10][$id]."</span></td></tr>");
unset($ct);
}?>
</table>
</td></tr>
<tr><td align='right' width='30%'><span class='txtform'>Précisions :</span></td><td><textarea style='width:360 <?if($errf_11==1){print("; background-color: ".$color_form_warn."; color: ".$color_font_warn);}?>;' name='f_11' rows='6' cols='40'><?echo$f_11?></textarea></td></tr>
<tr><td align='right' width='30%'></td><td><input type='submit' name='submit' value='Envoyer' border='0'></td></tr>
</table>
</form>




<? } ?>
</body>

</html>


Merci beaucoup pour le temps accoré!

Configuration: Windows 2000 Internet Explorer 6.0

2 réponses

Bonjour

Je regarde ton code :
<? for($id=0;$id<count($list['f_9']);$id++){
if($id==$f_9){$ct="selected";}
print("<option ".$ct." value=".$id.">".$list['f_9'][$id]."</option>");  

Tu donnes bien à value la valeur $id, c'est à dire 0,1,2,...
Alors, normal que tu retrouves 0,1,2... quand tu récupères le formulaire !
0
Désolè pour la reponse trops tardive... mon ordi a planté!!!!


Merci le`père pour la remarque! j'ai effectivement oublié ça, mais sauf je ne sais pas comment changer les valeurs chiffre en texte, veux m'aider à le faire ss'ilte plait! merci encore pour les répnse!
0
lewis34 Messages postés 2557 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 30 mai 2015 352
22 sept. 2009 à 04:58
un petit exemple simple
dans la page ou tu traite tes variables POST


//initialisation de ton tableau des couleur, qui doit etre dans le meme ordre que ton select
$tab_couleur=array("","Noir et Marron","Blanche et Marron","Blanche et Noir","Indifferent"); //le premier rang doit etre vide, un array commence toujours à 0

$rang_couleur=$_POST['ton_select_couleur'];//valeur retournée par  ton select

$couleur=$tab_couleur[$rang_couleur];//ta couleur recuperée dans ton array
0
Merci lewis pour ta réponse, j'ai essayé de faire comme tu as fais avec mes variables à moi ....mais ça a rien donné!!
0