Bonjour
je voudrai mettre des données d'une liste déroulante dans un champ grace à des boutons
Voici l'adresse de mon formulaire : http://chicochaleur.pirahack.info/formulaire/test.php
Et voici le code source :
[code]
// On vérifie si la fonction ini_set() a été désactivée...
$desactive = ini_get('disable_functions');
if (preg_match("/ini_set/i", "$desactive") == 0) {
// Si elle n'est pas désactivée, on définit ini_set de manière à n'afficher que les erreurs...
ini_set("error_reporting" , "E_ALL & ~E_NOTICE");
}
// Vérifier que le formulaire a été envoyé...
if (isset($_POST['envoi'])) {
//On commence une session pour enregistrer les variables du formulaire...
session_start();
$_SESSION['champ1'] = $_POST['champ1'];
$_SESSION['zone_email1'] = $_POST['zone_email1'];
$_SESSION['liste1'] = $_POST['liste1'];
$_SESSION['liste2'] = $_POST['liste2'];
//Evaluation du bouton 1 ...
switch($_POST['bouton1']) {
case "Oui":
$_SESSION['bouton1'] = "Oui";
break;
case "Non":
$_SESSION['bouton1'] = "Non";
break;
default:
$_SESSION['bouton1'] = "";
} // Fin du Switch...
//Enregistrement des zones de texte...
$_SESSION['zone_texte1'] = $_POST['zone_texte1'];
$_SESSION['zone_texte2'] = $_POST['zone_texte2'];
$_SESSION['zone_texte3'] = $_POST['zone_texte3'];
// Définir l\\\'icone apparaissant en cas d\\\'erreur...
// Définir sur 0 pour afficher un petit x de couleur rouge.
// Définir sur 1 pour afficher l\\\'image d\\\'une croix rouge telle que celle utilisée dans l\\\'assistant
// Si vous utilisez l\\\'option 1, l\\\'image de la croix rouge \\\'icone.gif\\\' doit se trouver dans le répertoire \\\'images\\\',
// ce dernier devant se trouver au même niveau que votre formulaire...
$flag_icone = 0;
// On vérifie si $flag_icone est défini sur 0 ou 1...
if ($flag_icone == 0) {
$icone = "x";
} else {
$icone = "
}
// Définir l'indicateur d'erreur sur zéro...
$flag_erreur = 0;
// N'envoyer le formulaire que s'il n'y a pas d'erreurs...
if ($flag_erreur == 0) {
// Addresse de réception du formulaire
$email_dest = "mail@mail.fr";
$sujet = "Formulaire bien recu, il sera traité dans les plus brefs délais";
$entetes ="MIME-Version: 1.0 \n";
$entetes .="From: Matériels\n";
$entetes .="Return-Path: Matériels\n";
$entetes .="Reply-To: Matérielstoto@centrapel.com>\n";
$entetes .="Content-Type: text/html; charset=iso-8859-1 \n";
Formulaire $partie_entete = "\n\n\n\n\n\n";
//Partie HTML de l'e-mail...
$partie_champs_texte .= "Merci d'indiquez votre nom = " . $_SESSION['champ1'] . "
\n";
$partie_zone_email .= "Merci d'indiquez votre adresse Email pour la confirmation de la commande = " . $_SESSION['zone_email1'] . "
\n";
$partie_listes .= "Matériels = " . $_SESSION['liste1'] . "
\n";
$partie_listes .= "Quantité = " . $_SESSION['liste2'] . "
\n";
$partie_boutons .= "Habitez-vous sur Paris? = " . $_SESSION['bouton1'] . "
\n";
$partie_zone_texte .= "Merci d'indiquez l'adresse de livraison = " . $_SESSION['zone_texte1'] . "
\n";
$partie_zone_texte .= "Si vous avez des commentaires ou autre sur la commande = " . $_SESSION['zone_texte2'] . "
\n";
$partie_zone_texte .= "Récapitulatif de votre commande = " . $_SESSION['zone_texte3'] . "
\n";
// Fin du message HTML
$fin = "\n\n";
$sortie = $partie_entete . $partie_champs_texte . $partie_zone_email . $partie_listes . $partie_boutons . $partie_cases . $partie_zone_texte . $fin;
// Send the e-mail
if (@!mail($email_dest,$sujet,$sortie,$entetes)) {
echo("Envoi du formulaire impossible");
exit();
} else {
// Rediriger vers la page de remerciement
header("Location:http://chicochaleur.myftp.org/merci.html");
exit();
} // Fin else
} // Fin du if ($flag_erreur == 0) {
} // Fin de if POST
?>
function changer_couleurs() {
document.fgColor=document.form.fgColor.value
document.bgColor=document.form.bgColor.value
}
Choisissez une couleur de fondBleuRougeVertJauneOrangeVioletBleu foncé
Choisissez une couleur de policeBleuRougeVertJauneOrangeVioletBleu foncé
function Retour()
{
document.write('');
}
-->
Formulaire
function verifSelection() {
if (document.mail_form.champ1.value == "") {
alert("Merci d\\\'indiquez votre nom")
return false
}
if (document.mail_form.zone_email1.value == "") {
alert("Merci d\\\'indiquez votre adresse Email")
return false
}
invalidChars = " /:,;'"
for (i=0; i badChar = invalidChars.charAt(i)
if (document.mail_form.zone_email1.value.indexOf(badChar,0) > -1) {
alert("Votre adresse e-mail contient des caractères invalides. Veuillez vérifier.")
document.mail_form.zone_email1.focus()
return false
}
}
atPos = document.mail_form.zone_email1.value.indexOf("@",1) // there must be one "@" symbol
if (atPos == -1) {
alert('Votre adresse e-mail ne contient pas le signe "@". Veuillez vérifier.')
document.mail_form.zone_email1.focus()
return false
}
if (document.mail_form.zone_email1.value.indexOf("@",atPos+1) != -1) { // and only one "@" symbol
alert('Il ne doit y avoir qu\\\'un signe "@". Veuillez vérifier.')
document.mail_form.zone_email1.focus()
return false
}
periodPos = document.mail_form.zone_email1.value.indexOf(".",atPos)
if (periodPos == -1) { // and at least one "." after the "@"
alert('Vous avez oublié le point "." après le signe "@". Veuillez vérifier.')
document.mail_form.zone_email1.focus()
return false
}
if (periodPos+3 > document.mail_form.zone_email1.value.length) { // must be at least 2 characters after the
alert('Il doit y avoir au moins deux caractères après le signe ".". Veuillez vérifier.')
document.mail_form.zone_email1.focus()
return false
}
if (document.mail_form.liste1.value == "") {
alert("Merci de choisir un matériel")
return false
}
if (document.mail_form.liste2.value == "") {
alert("Merci de choisir la quantitée")
return false
}
nbreboutons1 = document.mail_form.bouton1.length
flag = 0
for (i = 0; i
if (document.mail_form.bouton1[i].checked) {
flag = 1
}
}
if (flag == 0) {
alert("Merci de préciser de lieu où vous résidez")
return false;
}
if (document.mail_form.zone_texte1.value == "") {
alert("Merci de remplir l\\\'adresse de livraison")
return false
}
} // Fin de la fonction
Formulaire
d'envoi de Matériels
if ($erreur_champ1) {
echo(stripslashes($erreur_champ1));
} else {
if ($erreur_email1) {
echo(stripslashes($erreur_email1));
} else {
if ($erreur_liste1) {
echo(stripslashes($erreur_liste1));
} else {
if ($erreur_liste2) {
echo(stripslashes($erreur_liste2));
} else {
if ($erreur_bouton1) {
echo(stripslashes($erreur_bouton1));
} else {
if ($erreur_texte1) {
echo(stripslashes($erreur_texte1));
} else {
if ($erreur_texte2) {
echo(stripslashes($erreur_texte2));
} else {
} // Fin du else...
} // Fin du else...
} // Fin du else...
} // Fin du else...
} // Fin du else...
} // Fin du else...
} // Fin du else...
?>
Merci d'indiquez votre Nom
if ($erreur_champ1) {
echo($icone);
}
?>
Merci d'indiquez votre Adresse Email pour la confirmation de la commande
if ($erreur_email1) {
echo($icone);
}
?>
Matériels
if ($erreur_liste1) {
echo($icone);
}
?>
Sélectionner...if ($_SESSION['liste1'] == "Griffon") {echo(" selected");}?>>Griffonif ($_SESSION['liste1'] == "Sctochlocks") {echo(" selected");}?>>Sctochlocksif ($_SESSION['liste1'] == "Sucettes") {echo(" selected");}?>>Sucettes
Quantité
if ($erreur_liste2) {
echo($icone);
}
?>
...if ($_SESSION['liste2'] == "1") {echo(" selected");}?>>1if ($_SESSION['liste2'] == "2") {echo(" selected");}?>>2if ($_SESSION['liste2'] == "3") {echo(" selected");}?>>3if ($_SESSION['liste2'] == "4") {echo(" selected");}?>>4if ($_SESSION['liste2'] == "5") {echo(" selected");}?>>5if ($_SESSION['liste2'] == "6") {echo(" selected");}?>>6if ($_SESSION['liste2'] == "7") {echo(" selected");}?>>7if ($_SESSION['liste2'] == "8") {echo(" selected");}?>>8if ($_SESSION['liste2'] == "9") {echo(" selected");}?>>9if ($_SESSION['liste2'] == "10") {echo(" selected");}?>>10
Habitez-vous sur Paris?
if ($erreur_bouton1) {
echo($icone);
}
?>
OuiNon
Merci d'indiquez l'adresse de livraison
if ($erreur_texte1) {
echo($icone);
}
?>
<?=stripslashes($_SESSION['zone_texte1']);?>
Si vous avez des commentaires ou autre sur la commande
if ($erreur_texte2) {
echo($icone);
}
?>
<?=stripslashes($_SESSION['zone_texte2']);?>
Voici le récapitulatif de votre commande
if ($erreur_texte3) {
echo($icone);
}
?>
<?=stripslashes($_SESSION['zone_texte3']);?>
Retour()
[/code]
Donc j'aimerai faire fonctionner mes boutons "ajouter" et "supprimer"
Quand on clique sur "ajouter" ca doit ajouter ce que la personne à choisis dans les liste déroulante dans le champ récapitulalif de la commande
Et quand on clique sur supprimer, ca doit supprimer dans le champs récapitulatif de la commande, juste l'article qui faut supprimer
Donc j'aimerai voir un truc en ligne
par exemple, elle choisi 5 griffons et 2 sucettes
ca devrai afficher dans le champs récapitulatif de la commande
5 griffons
2 succettes
Et si la personne se trompe, si elle clique sur 2 sucettes par exemple et ensuite qu'elle clique sur supprimer, ca supprimer juste 2 sucettes et les 5 griffons sont garder
C'est assez compliquer à faire je pense, mais je n'ai aucune idée de comment faire!
Merci d'avance!