Récupérer donnée liste menu pour un calcul
Résolu/Fermé
a.finot
Messages postés
74
Date d'inscription
mardi 21 octobre 2008
Statut
Membre
Dernière intervention
12 février 2014
-
10 sept. 2009 à 16:34
jojonux Messages postés 21 Date d'inscription jeudi 10 septembre 2009 Statut Membre Dernière intervention 11 septembre 2009 - 11 sept. 2009 à 13:17
jojonux Messages postés 21 Date d'inscription jeudi 10 septembre 2009 Statut Membre Dernière intervention 11 septembre 2009 - 11 sept. 2009 à 13:17
A voir également:
- Récupérer donnée liste menu pour un calcul
- Liste déroulante excel - Guide
- Comment récupérer un compte facebook piraté - Guide
- Comment recuperer un message supprimé sur whatsapp - Guide
- Recuperer video youtube - Guide
- Récupérer photo instagram - Guide
5 réponses
jojonux
Messages postés
21
Date d'inscription
jeudi 10 septembre 2009
Statut
Membre
Dernière intervention
11 septembre 2009
10 sept. 2009 à 21:35
10 sept. 2009 à 21:35
Bonsoir A.Finot,
Si vous n'avez pas encore résolu votre probleme je vous propose le code suivant:
Ce script vous permettra de calculer et d'afficher le prix sur la meme page, dés que le client aura selectionné la quantité . Lorsque le client valide la quantité la page est rechargé avec la valeur saisie, et vous pouvez ainsi afficcher le prix, rapidement sur la meme page.
Cette methode a l'avantage de se passer de Javascript.
N'hesitez pas a poser des questions si le besoin s'en fait sentir, ou si vous voulez vraiment ne pas avoir a cliquer sur un bouton :)
<?php
// Recuperation de la valeur selectionne par l'utilisateur
// dans le menu deroulant.
//------------------------------------------------------
if(isset($_POST['select_quantite'])){
//apres le test de saisie de la quantite vous pouvez mettre vos calculs
// par exemple un echo de la valeur saisie :
$quantite = $_POST['select_quantite'];
echo "Quantite selectionnee".$quantite."<br>" ;
}
/* ******************************************************
* Votre code
***************************************************** */
?>
<HTML>
<HEAD>
<TITLE>un_titre_de_page</TITLE>
</HEAD>
<BODY>
<!-- action doit etre vide pour que la page soit recharger -->
<FORM action="" method="POST">
<!-- liste deroulante-->
<SELECT name="select_quantite" size="1">
<?php
for($i=1;$i<10;$i++){
echo "<option value='".$i."'>".$i."</option>" ;
}
?>
<INPUT type="submit" value="calculer" >
</SELECT>
<!-- **************** -->
</FORM>
<BODY>
</HTML>
Si vous n'avez pas encore résolu votre probleme je vous propose le code suivant:
Ce script vous permettra de calculer et d'afficher le prix sur la meme page, dés que le client aura selectionné la quantité . Lorsque le client valide la quantité la page est rechargé avec la valeur saisie, et vous pouvez ainsi afficcher le prix, rapidement sur la meme page.
Cette methode a l'avantage de se passer de Javascript.
N'hesitez pas a poser des questions si le besoin s'en fait sentir, ou si vous voulez vraiment ne pas avoir a cliquer sur un bouton :)
<?php
// Recuperation de la valeur selectionne par l'utilisateur
// dans le menu deroulant.
//------------------------------------------------------
if(isset($_POST['select_quantite'])){
//apres le test de saisie de la quantite vous pouvez mettre vos calculs
// par exemple un echo de la valeur saisie :
$quantite = $_POST['select_quantite'];
echo "Quantite selectionnee".$quantite."<br>" ;
}
/* ******************************************************
* Votre code
***************************************************** */
?>
<HTML>
<HEAD>
<TITLE>un_titre_de_page</TITLE>
</HEAD>
<BODY>
<!-- action doit etre vide pour que la page soit recharger -->
<FORM action="" method="POST">
<!-- liste deroulante-->
<SELECT name="select_quantite" size="1">
<?php
for($i=1;$i<10;$i++){
echo "<option value='".$i."'>".$i."</option>" ;
}
?>
<INPUT type="submit" value="calculer" >
</SELECT>
<!-- **************** -->
</FORM>
<BODY>
</HTML>
a.finot
Messages postés
74
Date d'inscription
mardi 21 octobre 2008
Statut
Membre
Dernière intervention
12 février 2014
2
11 sept. 2009 à 11:36
11 sept. 2009 à 11:36
Merci bcp Jojonux,
C'est très gentil d'avoir pris le temps de tout bien m'expliquer comme vous l'avez fait !
J'ai essayé quelques trucs par rapport à ce que vous m'avez envoyé mais aucun résultat concluant...
J'ai un unique formulaire (en POST) qui contient trois tableaux : les coordonnées de la personne, le bon de commande et une zonne de texte pour les messages.
Lorsque la personne valide sa commande toutes ces données sont enregistrées dans une table, envoyées par mail et la personne est redirigée vers la paiement. J'ai peur qu'en indiquant " " à action ça ne s'enregistre plus dans ma base, non ?
Du coup, mon problème, c'est qu'il faut que mon calcul se fasse tout seul, juste au choix d'un numéro dans la liste déroulante, sans bouton submit... et vu que mon formulaire fait pas mal de chose déjà il commence à devenir un peu trop complexe pour moi... j'ai du mal à m'y retrouver et je ne sais plus trop où mettre les choses, d'autant plus que c'est la première fois que j'essaie de faire un tableau avec des formules de calcul... !
Peut-être auriez-vous besoin de mon code... mais il est très long !!!? Voici déjà juste ma balise form :
<form action="<?php echo $editFormAction; ?>" name="contacts" id="contacts" method="POST">
<table width="610" border="0" align="center" cellpadding="0" cellspacing="0" id="coordonnees">
<tr>
<td height="27" colspan="4"><h1>Vos coordonnées</h1></td>
</tr>
<tr>
<td height="27" colspan="4"><p>
<label>
<input name="sexe" type="radio" id="sexe_0" value="Madame" checked="checked" />
Mme</label>
<label>
<input type="radio" name="sexe" value="Mademoiselle" id="sexe_1" />
Mlle</label>
<label>
<input type="radio" name="sexe" value="Monsieur" id="sexe_2" />
M.</label>
<br />
</p></td>
</tr>
<tr>
<td width="95" height="27"><p>*Nom :
</p></td>
<td width="169"><input name="nom" type="text" id="nom" size="20" /></td>
<td width="174">*Prénom : </td>
<td width="132"><input name="prenom" type="text" id="prenom" size="20" /></td>
</tr>
<tr>
<td><p>*Adresse :
</p></td>
<td><input name="adresse" type="text" id="adresse" size="20" /></td>
<td> Pays : </td>
<td><input name="pays" type="text" id="pays" value="France" size="20" /></td>
</tr>
<tr>
<td><p>*Code postal :
</p></td>
<td><input name="cp" type="text" id="cp" size="10" /></td>
<td>*Ville : </td>
<td><input name="ville" type="text" id="ville" size="20" /></td>
</tr>
<tr>
<td>*Email : </td>
<td><input name="email" type="text" id="email" size="20" /></td>
<td>*Mobile : </td>
<td><input name="tel" type="text" id="tel" size="20" /></td>
</tr>
<tr>
<td> Index : </td>
<td><input name="index" type="text" id="index" size="5" /></td>
<td><p>Si vous n'êtes pas classé, merci de nous indiquer votre niveau :
</p></td>
<td><select name="niveau" id="niveau">
<option value="Classé">Classé</option>
<option value="Non initié">Non initié</option>
<option value="Débutant">Débutant</option>
<option value="Carte verte">Carte verte</option>
<option value="Moyen">Moyen</option>
</select></td>
</tr>
<tr>
<td colspan="4"> <h2>* champs obligatoires</h2></td>
</tr>
<tr>
<td colspan="2"><h2> </h2></td>
<td colspan="2"> </td>
</tr>
</table>
<table width="570" border="1" id="commande">
<tr>
<td colspan="4"><h1>Votre commande</h1></td>
</tr>
<tr>
<td width="306"><h3>Article</h3></td>
<td width="56"><h3>Quantité</h3></td>
<td width="102"><h3>Prix Unitaire H.T</h3></td>
<td width="78"><h3>Total H.T</h3></td>
</tr>
<tr>
<td>Livre - remise de 5%</td>
<td><label>
<select name="quantite" id="quantite">
<?php
do {
?>
<option value="<?php echo $row_rsTarifs['quantite']?>"><?php echo $row_rsTarifs['quantite']?></option>
<?php
} while ($row_rsTarifs = mysql_fetch_assoc($rsTarifs));
$rows = mysql_num_rows($rsTarifs);
if($rows > 0) {
mysql_data_seek($rsTarifs, 0);
$row_rsTarifs = mysql_fetch_assoc($rsTarifs);
}
?>
</select>
</label></td>
<td><label>
35,93 euros</label></td>
<td><label>
<input name="prixht" type="text" id="prixht" value="<?php echo $_POST['quantite']*35.93; ?>" size="15" />
euros</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>TOTAL H.T</td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>TVA 5,5%</td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Frais de port France Métropolitaine</td>
<td>1</td>
<td>7,00 euros</td>
<td>Offert</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="3">Net à payer TTC</td>
<td> </td>
</tr>
</table>
<table width="570">
<tr>
<td colspan="2">Commentaires :<br />
<textarea name="commentaires2" id="commentaires2" cols="60" rows="5"></textarea></td>
</tr>
<tr>
<td colspan="2"><input name="offrespartenaires" type="checkbox" id="offrespartenaires" value="oui" checked="checked" />
<em>Oui, je souhaite recevoir les offres des partenaires commerciaux </em></td>
</tr>
<tr>
<td><input type="hidden" name="ID" id="ID" />
* champs obligatoires</td>
<td> </td>
</tr>
<tr>
<td><input type="hidden" name="MM_insert" value="contacts" /></td>
<td><input type="submit" name="envoyer" id="envoyer" value="Validez votre commande" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
</form>
C'est très gentil d'avoir pris le temps de tout bien m'expliquer comme vous l'avez fait !
J'ai essayé quelques trucs par rapport à ce que vous m'avez envoyé mais aucun résultat concluant...
J'ai un unique formulaire (en POST) qui contient trois tableaux : les coordonnées de la personne, le bon de commande et une zonne de texte pour les messages.
Lorsque la personne valide sa commande toutes ces données sont enregistrées dans une table, envoyées par mail et la personne est redirigée vers la paiement. J'ai peur qu'en indiquant " " à action ça ne s'enregistre plus dans ma base, non ?
Du coup, mon problème, c'est qu'il faut que mon calcul se fasse tout seul, juste au choix d'un numéro dans la liste déroulante, sans bouton submit... et vu que mon formulaire fait pas mal de chose déjà il commence à devenir un peu trop complexe pour moi... j'ai du mal à m'y retrouver et je ne sais plus trop où mettre les choses, d'autant plus que c'est la première fois que j'essaie de faire un tableau avec des formules de calcul... !
Peut-être auriez-vous besoin de mon code... mais il est très long !!!? Voici déjà juste ma balise form :
<form action="<?php echo $editFormAction; ?>" name="contacts" id="contacts" method="POST">
<table width="610" border="0" align="center" cellpadding="0" cellspacing="0" id="coordonnees">
<tr>
<td height="27" colspan="4"><h1>Vos coordonnées</h1></td>
</tr>
<tr>
<td height="27" colspan="4"><p>
<label>
<input name="sexe" type="radio" id="sexe_0" value="Madame" checked="checked" />
Mme</label>
<label>
<input type="radio" name="sexe" value="Mademoiselle" id="sexe_1" />
Mlle</label>
<label>
<input type="radio" name="sexe" value="Monsieur" id="sexe_2" />
M.</label>
<br />
</p></td>
</tr>
<tr>
<td width="95" height="27"><p>*Nom :
</p></td>
<td width="169"><input name="nom" type="text" id="nom" size="20" /></td>
<td width="174">*Prénom : </td>
<td width="132"><input name="prenom" type="text" id="prenom" size="20" /></td>
</tr>
<tr>
<td><p>*Adresse :
</p></td>
<td><input name="adresse" type="text" id="adresse" size="20" /></td>
<td> Pays : </td>
<td><input name="pays" type="text" id="pays" value="France" size="20" /></td>
</tr>
<tr>
<td><p>*Code postal :
</p></td>
<td><input name="cp" type="text" id="cp" size="10" /></td>
<td>*Ville : </td>
<td><input name="ville" type="text" id="ville" size="20" /></td>
</tr>
<tr>
<td>*Email : </td>
<td><input name="email" type="text" id="email" size="20" /></td>
<td>*Mobile : </td>
<td><input name="tel" type="text" id="tel" size="20" /></td>
</tr>
<tr>
<td> Index : </td>
<td><input name="index" type="text" id="index" size="5" /></td>
<td><p>Si vous n'êtes pas classé, merci de nous indiquer votre niveau :
</p></td>
<td><select name="niveau" id="niveau">
<option value="Classé">Classé</option>
<option value="Non initié">Non initié</option>
<option value="Débutant">Débutant</option>
<option value="Carte verte">Carte verte</option>
<option value="Moyen">Moyen</option>
</select></td>
</tr>
<tr>
<td colspan="4"> <h2>* champs obligatoires</h2></td>
</tr>
<tr>
<td colspan="2"><h2> </h2></td>
<td colspan="2"> </td>
</tr>
</table>
<table width="570" border="1" id="commande">
<tr>
<td colspan="4"><h1>Votre commande</h1></td>
</tr>
<tr>
<td width="306"><h3>Article</h3></td>
<td width="56"><h3>Quantité</h3></td>
<td width="102"><h3>Prix Unitaire H.T</h3></td>
<td width="78"><h3>Total H.T</h3></td>
</tr>
<tr>
<td>Livre - remise de 5%</td>
<td><label>
<select name="quantite" id="quantite">
<?php
do {
?>
<option value="<?php echo $row_rsTarifs['quantite']?>"><?php echo $row_rsTarifs['quantite']?></option>
<?php
} while ($row_rsTarifs = mysql_fetch_assoc($rsTarifs));
$rows = mysql_num_rows($rsTarifs);
if($rows > 0) {
mysql_data_seek($rsTarifs, 0);
$row_rsTarifs = mysql_fetch_assoc($rsTarifs);
}
?>
</select>
</label></td>
<td><label>
35,93 euros</label></td>
<td><label>
<input name="prixht" type="text" id="prixht" value="<?php echo $_POST['quantite']*35.93; ?>" size="15" />
euros</label></td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>TOTAL H.T</td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>TVA 5,5%</td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td>Frais de port France Métropolitaine</td>
<td>1</td>
<td>7,00 euros</td>
<td>Offert</td>
</tr>
<tr>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>
<tr>
<td colspan="3">Net à payer TTC</td>
<td> </td>
</tr>
</table>
<table width="570">
<tr>
<td colspan="2">Commentaires :<br />
<textarea name="commentaires2" id="commentaires2" cols="60" rows="5"></textarea></td>
</tr>
<tr>
<td colspan="2"><input name="offrespartenaires" type="checkbox" id="offrespartenaires" value="oui" checked="checked" />
<em>Oui, je souhaite recevoir les offres des partenaires commerciaux </em></td>
</tr>
<tr>
<td><input type="hidden" name="ID" id="ID" />
* champs obligatoires</td>
<td> </td>
</tr>
<tr>
<td><input type="hidden" name="MM_insert" value="contacts" /></td>
<td><input type="submit" name="envoyer" id="envoyer" value="Validez votre commande" /></td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
</table>
</form>
jojonux
Messages postés
21
Date d'inscription
jeudi 10 septembre 2009
Statut
Membre
Dernière intervention
11 septembre 2009
11 sept. 2009 à 12:07
11 sept. 2009 à 12:07
Je vais regarder un peu tout ça et je vous tiens au courrant.
Bonne journée :)
Bonne journée :)
a.finot
Messages postés
74
Date d'inscription
mardi 21 octobre 2008
Statut
Membre
Dernière intervention
12 février 2014
2
11 sept. 2009 à 12:14
11 sept. 2009 à 12:14
Merci beaucoup ! :-)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jojonux
Messages postés
21
Date d'inscription
jeudi 10 septembre 2009
Statut
Membre
Dernière intervention
11 septembre 2009
11 sept. 2009 à 13:17
11 sept. 2009 à 13:17
Finalement je vous met un petit bout de javascript pour votre cas, vous n'aurez plus qu'a l'adapter a votre code:
<html>
<head>
</head>
<body>
<script type="text/javascript">
function calcul()
{
document.getElementById("total").value=
parseFloat( document.getElementById("quantite").value)*
parseFloat( document.getElementById("prixu").value);
}
</script>
<input type="text" name="quantite" id="quantite">
<input type="text" name="prixu" id="prixu">
<input type="text" name="total" id="total">
<input type="button" onclick="calcul();" value="*"><br>
</body>
</html>
Bonne journée :)
<html>
<head>
</head>
<body>
<script type="text/javascript">
function calcul()
{
document.getElementById("total").value=
parseFloat( document.getElementById("quantite").value)*
parseFloat( document.getElementById("prixu").value);
}
</script>
<input type="text" name="quantite" id="quantite">
<input type="text" name="prixu" id="prixu">
<input type="text" name="total" id="total">
<input type="button" onclick="calcul();" value="*"><br>
</body>
</html>
Bonne journée :)