arno.p
Messages postés1Date d'inscriptionmercredi 17 novembre 2010StatutMembreDernière intervention17 novembre 2010
-
17 nov. 2010 à 16:38
avion-f16
Messages postés19250Date d'inscriptiondimanche 17 février 2008StatutContributeurDernière intervention22 décembre 2024
-
17 nov. 2010 à 18:32
Bonjour à tous, je suis plutôt débutant en PHP & HTML et j'ai, plus ou moins, réussi à réaliser une page permettant de réaliser un devis. L'utilisateur sélectionne ce dont il a besoin et le tarif s'affiche en bas de page. J'aimerais pouvoir obtenir par mail les éléments qu'il a sélectionné ainsi que son adresse mail qu'il saisirait dans un champ différent. Mais c'est là que je bug et ne trouve pas du tout la solution. Toute aide serait bien évidemment plus que la bienvenue !
Merci à tous
<script type="text/javascript">
// Calculate the total for items in the form which are selected.
function calculateTotal(inputItem)
{
with (inputItem.form)
{
// Process each of the different input types in the form.
if (inputItem.type == "radio")
{ // Process radio buttons.
// Subtract the previously selected radio button value from the total.
calculatedTotal.value = eval(calculatedTotal.value) - eval(previouslySelectedRadioButton.value);
// Save the current radio selection value.
previouslySelectedRadioButton.value = eval(inputItem.value);
// Add the current radio button selection value to the total.
calculatedTotal.value = eval(calculatedTotal.value) + eval(inputItem.value);
}
else
{ // Process check boxes.
if (inputItem.checked == false)
{ // Item was uncheck. Subtract item value from total.
calculatedTotal.value = eval(calculatedTotal.value) - eval(inputItem.value);
}
else
{ // Item was checked. Add the item value to the total.
calculatedTotal.value = eval(calculatedTotal.value) + eval(inputItem.value);
}
}
// Total value should never be less than 0.
if (calculatedTotal.value < 0) {
InitForm();
}
// Return total value.
return(formatCurrency(calculatedTotal.value));
}
}
// Format a value as currency.
function formatCurrency(num) {
num = num.toString().replace(/\$|\,/g,'');
if(isNaN(num))
num = "0";
sign = (num == (num = Math.abs(num)));
num = Math.floor(num*100+0.50000000001);
cents = num%100;
num = Math.floor(num/100).toString();
if(cents<10)
cents = "0" + cents;
for (var i = 0; i < Math.floor((num.length-(1+i))/3); i++)
num = num.substring(0,num.length-(4*i+3)) + ',' + num.substring(num.length-(4*i+3));
return (((sign)?'':'-') + '€' + num + '.' + cents);
}
// This function initialzes all the form elements to default values.
function InitForm() {
// Reset values on form.
document.selectionForm.total.value='€0';
document.selectionForm.calculatedTotal.value=0;
document.selectionForm.previouslySelectedRadioButton.value=0;
// Set all checkboxes and radio buttons on form to unchecked.
for (i=0; i < document.selectionForm.elements.length; i++) {
if (document.selectionForm.elements[i].type == 'checkbox' | document.selectionForm.elements[i].type == 'radio') {
document.selectionForm.elements[i].checked = false;
}
}
}
</script>
</head>
<body onload="InitForm();" onreset="InitForm();">
<div>
<table><tr><td>
<form method="POST" name="selectionForm">
<a href="../img/diametre_bobines.jpg" rel="lightbox"><img src="../img/encart_numerisation_tarifs.jpg" alt="" name="" width="469" height="53" border="0"/></a><br />
<b>
<input type="checkbox" name="Montage K7 récente" value="29.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/montage.jpg" rel="lightbox"> Montage + DVD (DV, VHS, DVD, Disque Dur ou Carte Mémoire) par session de 2H</a></b><br>
<br />
<b><input type="checkbox" name="Montage K7 ancienne" value="79.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/montage.jpg" rel="lightbox"> Montage + DVD (Hi-8, Vidéo 8 ou Digital 8) par session de 2H </a></b><br />
<br />
<a href="../img/diametre_bobines.jpg" rel="lightbox"><img src="../img/encart_produits_tarifs.jpg" alt="" name="" width="469" height="53" border="0"/></a><br />
<b>
<input type="checkbox" name="DVD Supplementaire" value="9.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/DVD.jpg" rel="lightbox">DVD Supplémentaire </a></b><br />
<br />
<b> <input type="checkbox" name="Album photo" value="39.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/albumphoto.jpg" rel="lightbox">Album Photos de 20 pages - Grand format </a><br />
</b>
<br />
<b><input type="checkbox" name="Clé USB" value="19.00" onclick="this.form.total.value=calculateTotal(this);"><a href="../img/produits_associes/usb.jpg" rel="lightbox"> Film sur clé USB de 2go et mise en ligne sur Viméo </a><br />
</b> <br />
<b><input type="checkbox" name="Tapis de souris" value="19.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/tapis.jpg" rel="lightbox">Tapis de souris personnalisé </a></b><br />
<br />
</td></tr></table>
<br />
<b><a href="../img/diametre_bobines.jpg" rel="lightbox"><img src="../img/encart_bobines_tarifs.jpg" alt="" name="" width="469" height="53" border="0"/></a></b>
<table><tr><td>
<form method="POST" name="selectionForm">
<b><input type="checkbox" name="Taille 1" value="60.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/bobines.jpg" rel="lightbox"> Bobine de taille 1 </a></b><br>
<br />
<b><input type="checkbox" name="Taille 2" value="70.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/bobines.jpg" rel="lightbox">Bobine de taille 2 </a></b><br />
<br />
<b><input type="checkbox" name="Taille 3" value="89.90" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/bobines.jpg" rel="lightbox">Bobine de taille 3</a> </b><br />
<br />
<b> <input type="checkbox" name="Taille 4" value="99.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/bobines.jpg" rel="lightbox">Bobine de taille 4</a><br /></b>
<br />
<b><input type="checkbox" name="Taille 5" value="132.90" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/bobines.jpg" rel="lightbox">Bobine de taille 5</a><br />
</b> <br />
<b><input type="checkbox" name="Taille 6" value="166.00" onclick="this.form.total.value=calculateTotal(this);"> <a href="../img/produits_associes/bobines.jpg" rel="lightbox">Bobine de taille 6</a></b><br />
<br />
</td></tr></table>
avion-f16
Messages postés19250Date d'inscriptiondimanche 17 février 2008StatutContributeurDernière intervention22 décembre 20244 505 17 nov. 2010 à 18:32
Salut.
Pour l'envoie des résultats par email, tu peux utiliser la fonction mail() en PHP (nécessite un serveur SMTP).
Pour le traitement du formulaire, il faudra utiliser les variables $_POST.
Par contre, les choix et l'adresse email doivent être dans le même formulaire, donc dans la même balise <form>.
Trouvez des réponses à vos questions sur la création de sites web, le référencement et les meilleures pratiques pour gérer un site. Échangez avec d'autres webmasters passionnés pour améliorer vos compétences en ligne et optimiser vos projets de site web.