Aide php s'il vous plait pour formulaire
thomas
-
Thomas -
Thomas -
Bonjour a tous, je viens de créer un formulaire qui affiche des produits dans des input de type radio récupéré d'une base de donnée (jusque ici tout marche).
Le client fait donc son choix, et doit aussi rentrer une quantité dans un input de type text (jusque ici tout marche).
Le client a donc choisi son produit, rentré une quantité et valide le formulaire (c'est ici que tout se gate).
Maintenant une condition doit être réalisée, selon le produit sélectionné et la quantité sélectionnée (3 quantités possible : < à 500, <à 500 et <à 1000, et >1000). En fonction de ces critères une page s'affichera.
Toutefois je ne vois pas du tout comment construire le fichier choix_produit.php (à la validation du formulaire), contenant :
si choix=tel produit et quantité < 500 alors afficher telle page.
si choix=tel produit et quantité < 500 < 1000 alors ...
si choix=tel produit et quantité > 1000 alors ...
Est ce que quelqu'un pourrait m'aider à construire la condition s'il vous plait parce que je ne vois pas du tout comment la construire étant donné qu'elle comporte 2 critères, merci.
Le client fait donc son choix, et doit aussi rentrer une quantité dans un input de type text (jusque ici tout marche).
Le client a donc choisi son produit, rentré une quantité et valide le formulaire (c'est ici que tout se gate).
Maintenant une condition doit être réalisée, selon le produit sélectionné et la quantité sélectionnée (3 quantités possible : < à 500, <à 500 et <à 1000, et >1000). En fonction de ces critères une page s'affichera.
Toutefois je ne vois pas du tout comment construire le fichier choix_produit.php (à la validation du formulaire), contenant :
si choix=tel produit et quantité < 500 alors afficher telle page.
si choix=tel produit et quantité < 500 < 1000 alors ...
si choix=tel produit et quantité > 1000 alors ...
Est ce que quelqu'un pourrait m'aider à construire la condition s'il vous plait parce que je ne vois pas du tout comment la construire étant donné qu'elle comporte 2 critères, merci.
A voir également:
- Aide php s'il vous plait pour formulaire
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Easy php - Télécharger - Divers Web & Internet
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
6 réponses
Salut,
Est-ce que l'on pourrait avoir le code de ton formulaire ? On pourra comme ça être plus précis.
Merci
Est-ce que l'on pourrait avoir le code de ton formulaire ? On pourra comme ça être plus précis.
Merci
Moi je le ferais en php !
a la fin tu fait un chti :
<?
if(choix<machin){
<input submit onclik on va a la page>}
else if(choix>truc){
<input submit on va a l'autre page>}
else {
<input autre autre page}
?>
a la fin tu fait un chti :
<?
if(choix<machin){
<input submit onclik on va a la page>}
else if(choix>truc){
<input submit on va a l'autre page>}
else {
<input autre autre page}
?>
Merci pour ta réponse. Oui ça peut se faire toutefois il y a deux conditions et j'ai peur de pas arriver à bien faire le truc, est ce que ça peut se tourner comme ceci ? :
<?
if ((choix=produit1)&&(quantite<500)){
<input submit onclik on va a la page>}
else if((choix=produit1)&&(quantite<500 <1000)){
<input submit on va a l'autre page>}
else if((choix=produit1)&&(quantite>1000)){
<input submit on va a l'autre page>}
?>
Est ce que celà peut marcher ?
<?
if ((choix=produit1)&&(quantite<500)){
<input submit onclik on va a la page>}
else if((choix=produit1)&&(quantite<500 <1000)){
<input submit on va a l'autre page>}
else if((choix=produit1)&&(quantite>1000)){
<input submit on va a l'autre page>}
?>
Est ce que celà peut marcher ?
if ($prdt == "Produit1"){
if($qte<"500") {
$prix= "ton prix";
}
elseif($qte > "1000"){
$prix= "ton 2ème prix";
}
else {
$prix = "dernier prix du produit";
}
elseif ($prdt =="Produit2"){
... etc
}
Dans cette construction, je veux pas afficher un prix, je veux afficher une page à part entière, est ce que le code est ceci du coup :
if ($prdt == "Produit1"){
if($qte<"500") {
<input submit onclik on va a la page>}
}
elseif($qte > "1000"){
<input submit onclik on va a la page>}
}
else {
<input submit onclik on va a la page>}
}
elseif ($prdt =="Produit2"){
... etc
}
if($qte<"500") {
$prix= "ton prix";
}
elseif($qte > "1000"){
$prix= "ton 2ème prix";
}
else {
$prix = "dernier prix du produit";
}
elseif ($prdt =="Produit2"){
... etc
}
Dans cette construction, je veux pas afficher un prix, je veux afficher une page à part entière, est ce que le code est ceci du coup :
if ($prdt == "Produit1"){
if($qte<"500") {
<input submit onclik on va a la page>}
}
elseif($qte > "1000"){
<input submit onclik on va a la page>}
}
else {
<input submit onclik on va a la page>}
}
elseif ($prdt =="Produit2"){
... etc
}
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Non, à la place du <input...> tu met :
header("Location: http://tonsite/tonchemin/tapage.php");
header("Location: http://tonsite/tonchemin/tapage.php");
j'ai un petit bug, j'ai modifé ma page index en évitant l'accès à la base de donnée, parce que je ne vais pas en avoir besoin au bout du compte, le code est celui-ci :
<HTML>
<HEAD>
<script language="javascript" type="text/javascript">
function check_form ()
{
var qtt = document.choix_devis.quantite.value;
// on vérifie que le champ est remplie
if (qtt == "") alert ("La quantité doit être renseignée s'il vous plaît");
// sinon => validation du formulaire
else document.choix_devis.submit ();
}
</script>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="middle" align="left" bgcolor="#007458" class="blanc"><img src="images/cd.jpg"> <b>Devis en ligne</b>
</td>
</tr>
<tr>
<td height="15">
</td>
</tr>
<tr>
<td valign="top" align="center">
<table border="0" cellpadding="0" cellspacing="10">
<tr>
<td valign="bottom" align="left" class="vert"><b>Choisissez le produit</b>
</td>
</tr>
<tr>
<td valign="top" align="center">
<form name="choix_devis" method="post" action="choix_devis.php">
<table border="0" cellpadding="5" cellspacing="0" class="dashed_vert" bgcolor="#F0F0F0">
<tr>
<td valign="top" align="left" class="bleu"><b>Faites votre choix (1 choix seulement) :</b>
</td>
<td valign="top" align="left" class="bleu">
<input name="radiobutton" type="radio" value="cdco" checked style="border:0px;">Produit1<br /><br />
<input name="radiobutton" type="radio" value="cdcr" style="border:0px;">Produit2<br /><br />
<input name="radiobutton" type="radio" value="mcd" style="border:0px;">Produit3<br /><br />
<input name="radiobutton" type="radio" value="cd12" style="border:0px;">Produit4<br /><br />
</td>
</tr>
<tr>
<td height="10" colspan="2">
</td>
</tr>
<tr>
<td valign="top" align="left" class="bleu"><b>Quantité</b>
</td>
<td valign="top" align="left" class="bleu"><input type="text" name="quantite" size="20">
</td>
</tr>
<tr>
<td height="10" colspan="2">
</td>
</tr>
<tr>
<td valign="top" align="center" class="bleu" colspan="2">
<input type="button" name="go_form" value="Valider" onclick="javascript:check_form();">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</td>
</tr>
</table>
Et ma page choix_devis.php affiche une erreur, je pense je fais des erreurs dans les constructions else et if :
<?
// récupération des variables
$quantite = $_POST['quantite'];
$radiobutton = $_POST['radiobutton'];
// affichage des conditions
// pour produit 1
if ($radiobutton == "cdco")
{
if($quantite<"500")
{
header("Location:cdco1.php");
}
}
elseif($quantite > "1000")
{
header("Location:cdco2.php");
}
else
{
header("Location:cdco3.php");
}
// pour produit 2
elseif ($radiobutton =="cdcr")
{
if($quantite<"500")
{
header("Location:cdcr1.php");
}
}
elseif($quantite > "1000")
{
header("Location:cdcr2.php");
}
else
{
header("Location:cdcr3.php");
}
// pour produit 3
elseif ($radiobutton =="mcd")
{
if($quantite<"500")
{
header("Location:mcd1.php");
}
}
elseif($quantite > "1000")
{
header("Location:mcd2.php");
}
else
{
header("Location:mcd3.php");
}
// pour produit 4
elseif ($radiobutton =="cd12")
{
if($quantite<"500")
{
header("Location:cd121.php");
}
}
elseif($quantite > "1000")
{
header("Location:cd122.php");
}
else
{
header("Location:cd123.php");
}
}
}
?>
Il y a un message d'erreur :
Parse error: parse error, unexpected T_ELSEIF
???
<HTML>
<HEAD>
<script language="javascript" type="text/javascript">
function check_form ()
{
var qtt = document.choix_devis.quantite.value;
// on vérifie que le champ est remplie
if (qtt == "") alert ("La quantité doit être renseignée s'il vous plaît");
// sinon => validation du formulaire
else document.choix_devis.submit ();
}
</script>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="middle" align="left" bgcolor="#007458" class="blanc"><img src="images/cd.jpg"> <b>Devis en ligne</b>
</td>
</tr>
<tr>
<td height="15">
</td>
</tr>
<tr>
<td valign="top" align="center">
<table border="0" cellpadding="0" cellspacing="10">
<tr>
<td valign="bottom" align="left" class="vert"><b>Choisissez le produit</b>
</td>
</tr>
<tr>
<td valign="top" align="center">
<form name="choix_devis" method="post" action="choix_devis.php">
<table border="0" cellpadding="5" cellspacing="0" class="dashed_vert" bgcolor="#F0F0F0">
<tr>
<td valign="top" align="left" class="bleu"><b>Faites votre choix (1 choix seulement) :</b>
</td>
<td valign="top" align="left" class="bleu">
<input name="radiobutton" type="radio" value="cdco" checked style="border:0px;">Produit1<br /><br />
<input name="radiobutton" type="radio" value="cdcr" style="border:0px;">Produit2<br /><br />
<input name="radiobutton" type="radio" value="mcd" style="border:0px;">Produit3<br /><br />
<input name="radiobutton" type="radio" value="cd12" style="border:0px;">Produit4<br /><br />
</td>
</tr>
<tr>
<td height="10" colspan="2">
</td>
</tr>
<tr>
<td valign="top" align="left" class="bleu"><b>Quantité</b>
</td>
<td valign="top" align="left" class="bleu"><input type="text" name="quantite" size="20">
</td>
</tr>
<tr>
<td height="10" colspan="2">
</td>
</tr>
<tr>
<td valign="top" align="center" class="bleu" colspan="2">
<input type="button" name="go_form" value="Valider" onclick="javascript:check_form();">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</td>
</tr>
</table>
Et ma page choix_devis.php affiche une erreur, je pense je fais des erreurs dans les constructions else et if :
<?
// récupération des variables
$quantite = $_POST['quantite'];
$radiobutton = $_POST['radiobutton'];
// affichage des conditions
// pour produit 1
if ($radiobutton == "cdco")
{
if($quantite<"500")
{
header("Location:cdco1.php");
}
}
elseif($quantite > "1000")
{
header("Location:cdco2.php");
}
else
{
header("Location:cdco3.php");
}
// pour produit 2
elseif ($radiobutton =="cdcr")
{
if($quantite<"500")
{
header("Location:cdcr1.php");
}
}
elseif($quantite > "1000")
{
header("Location:cdcr2.php");
}
else
{
header("Location:cdcr3.php");
}
// pour produit 3
elseif ($radiobutton =="mcd")
{
if($quantite<"500")
{
header("Location:mcd1.php");
}
}
elseif($quantite > "1000")
{
header("Location:mcd2.php");
}
else
{
header("Location:mcd3.php");
}
// pour produit 4
elseif ($radiobutton =="cd12")
{
if($quantite<"500")
{
header("Location:cd121.php");
}
}
elseif($quantite > "1000")
{
header("Location:cd122.php");
}
else
{
header("Location:cd123.php");
}
}
}
?>
Il y a un message d'erreur :
Parse error: parse error, unexpected T_ELSEIF
???
C'est normal, car à chaque fois tu ferme ton premier if{} trop tot.
Voici ce que tu devrais avoir pour le premier, à toi de modifier les suivants ;)
Voici ce que tu devrais avoir pour le premier, à toi de modifier les suivants ;)
if ($radiobutton == "cdco") { if($quantite<"500"){ header("Location:cdco1.php"); } elseif($quantite > "1000"){ header("Location:cdco2.php"); } else { header("Location:cdco3.php"); } }
<?
// connection à la base de données
include ("include/mysql_connect.php");
?>
<HTML>
<HEAD>
<script language="javascript" type="text/javascript">
function check_form ()
{
var qtt = document.choix_devis.quantite.value;
// on vérifie que le champ est remplie
if (qtt == "") alert ("La quantité doit être renseignée s'il vous plaît");
// sinon => validation du formulaire
else document.choix_devis.submit ();
}
</script>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="middle" align="left" bgcolor="#007458" class="blanc"><img src="images/cd.jpg"> <b>Devis en ligne</b>
</td>
</tr>
<tr>
<td height="15">
</td>
</tr>
<tr>
<td valign="top" align="center">
<table border="0" cellpadding="0" cellspacing="10">
<tr>
<td valign="bottom" align="left" class="vert"><b>Choisissez le produit</b>
</td>
</tr>
<tr>
<td valign="top" align="center">
<form name="choix_devis" method="post" action="choix_devis.php">
<table border="0" cellpadding="5" cellspacing="0" class="dashed_vert" bgcolor="#F0F0F0">
<tr>
<td valign="top" align="left" class="bleu"><b>Faites votre choix (1 choix seulement) :</b>
</td>
<td valign="top" align="left" class="bleu">
<?php
// on récupère les produits à afficher
$result = mysql_query("select * from t_produit ORDER by id_produit");
// on recupère et initialise les produits
while ($row = mysql_fetch_object($result))
{
// on initialise les variables
$nom_produit = $row->nom_produit;
// on affiche les produits
print("<input type=\"radio\" size=\"20\" value=\"$nom_produit\" name=\"radiobutton\">$nom_produit<br /><br />\n");
}
mysql_free_result($result);
mysql_close ();
?>
</td>
</tr>
<tr>
<td height="10" colspan="2">
</td>
</tr>
<tr>
<td valign="top" align="left" class="bleu"><b>Quantité</b>
</td>
<td valign="top" align="left" class="bleu"><input type="text" name="quantite" size="20">
</td>
</tr>
<tr>
<td height="10" colspan="2">
</td>
</tr>
<tr>
<td valign="top" align="center" class="bleu" colspan="2"><input type="button" name="go_form" value="Valider" onclick="javascript:check_form();">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
</body></html>
Voilà :)
$qte = $_POST['quantite'];
$prdt = $_POST['radiobutton'];
ensute utilise les if pour trouver le prix en fonction de la quantité et du type de produit.
http://www.commentcamarche.net/php/phpcond.php3#if
Compris ?