Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/12/2006, 12h58   #1
Membre du Club
 
Avatar de paradeofphp
 
Inscription : décembre 2005
Messages : 312
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 312
Points : 58
Points : 58
Par défaut Problème avec le prix que je dois appliquer

Bonjour,

Dans mon site je gère un ensemble de produit.
Pour un produit, j'ai 2 options de prix : prix pour les membres du sites et prix pour les non membres. Pour ces 2 options, on applique une réduction en cas d'achat de + de 5 exemplaires.

J'ai créé 2 boutons radio affichant les options : membre & non membre de la base de données :

Code :
1
2
3
4
5
6
7
8
9
 
$result_option = mysql_query("SELECT CdeOption,prixTTC,`option`,PrixUnitReduit,SeuilReduction FROM
prixoffre, offres WHERE offres.nom LIKE 'Hors série' AND prixoffre.CdeOffre = offres.CdeOffre",$connect_db);
 
while($row_option = mysql_fetch_array($result_option))
 {
    echo'<input type="radio" name="option" value="'.$row_option
           ["CdeOption"].'" class="option" />&nbsp;&nbsp;'.$row_option["option"].'<br />';
 }
Ensuite, je dois calculer le montant dû au client. Pour ce faire, je dois connaître le prix à appliquer, la quantité est saisie par le client.

pour ce faire, j'ai pensé à créer un champs caché "prix" qui a comme valeur le prix qu'il faut multiplier avec la quantite. j'ai créé également 2 champs caché dans la boucle précédente : 1 champs contient le prix unitaire, le 2ème champs contient le prix a appliquer en cas de réduction.

Mon code est devenu comme suit :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
while($row_option = mysql_fetch_array($result_option))
 {
   echo'<input type="radio" name="option" value="'.$row_option["CdeOption"].'" class="option"'; 
 if($modif) 
  {	
    echo(($option==$row_option["option"]) ? " checked=\"checked\"": null); 
  }
    echo '&nbsp;&nbsp;'.$row_option["option"].'<br />';
echo'<input name="prixTTC['.$row_option["CdeOption"].']" type="text" id="prixTTC" value="'.$row_option["prixTTC"].'" />';
 
echo'<input name="prixReduit['.$row_option["CdeOption"].']" type="text" id="prixReduit" value="'.$row_option["PrixUnitReduit"].'" />';
}
Pour calculer le montant du, j'ai créé la fonction javascript suivante :
Code :
1
2
3
function operation(val1, val2) {
     return val1 * val2; 
}
cette fonction je l'appel dans le champs quantité comme suit :

Code :
1
2
onblur="document.test5.montant.value = 
operation(document.test5.quantite.value, document.test5.prix.value)"
Le problème que j'ai et que je n'arrive pas a choisir le bon prix, j'ai mis ce petit code à l'evenement Onclick des boutons radio :

Code :
1
2
3
4
echo'<input type="radio" name="option" value="'.$row_option["CdeOption"].'" class="option"'; 
echo(($option==$row_option["option"]) ? " checked=\"checked\"": null); 
						 }
echo' onClick="document.test5.prix.value=document.test5.prixTTC[this.value]}.value"/>';
mais ca me donner erreur javascript. Je pense que Javascript ne reconnaît pas le tableau Php. je sais pas si j'ai été clair. Si vous avez besoin de + de clarification, posez-moi des questions. Merci
paradeofphp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 14h15   #2
Membre actif
 
Inscription : juillet 2003
Messages : 257
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 257
Points : 162
Points : 162
Citation:
pour ce faire, j'ai pensé à créer un champs caché "prix" qui a comme valeur le prix qu'il faut multiplier avec la quantite. j'ai créé également 2 champs caché dans la boucle précédente : 1 champs contient le prix unitaire, le 2ème champs contient le prix a appliquer en cas de réduction.
je ne sais pas ce qui tu cherches à vendre mais j'adorais connaitre le site où tu le fais

plus serieusement, abondonne cette idée de suite. il suffit de recuperer la quantité désirée de produit, tu identifies si c'est un membre ou pas (surement en passant par la base de données ou des variables à la milite), tu recuperes les prix normal et reduits tjs de ta base de données et ensuite un tout petit algo fera l'affaire.

Mais alors tes champs hidden, oublie!

EDIT : bon pour cette fois voila l'algo que tu cherches, il suffit de l'adapter en php
Code :
1
2
3
4
5
6
7
8
9
10
si membre
  si quantité > 5
    prix = quantité * prix réduit pour membre;
  sinon
    prix = quantité * prix normal pour membre;
sinon
  si quantité > 5
    prix = quantité * prix réduit pour non membre;
  sinon
    prix = quantité * prix normal pour non membre;
bein la il suffit d'avoir les 4 données:
prix normal pour membre
prix réduit pour membre (+ 5 articles)
prix normal pour non membre
prix réduit pour non membre (+ 5 articles)

bon courage
SegmentationFault est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/12/2006, 15h43   #3
Membre du Club
 
Avatar de paradeofphp
 
Inscription : décembre 2005
Messages : 312
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 312
Points : 58
Points : 58
Merci pour ta réponse
sinon ce que tu m'a proposé est correcte mais jepense pas que ca va me servir pour afficher le montant sans valider le formulaire. Je veux que lorsque je saisit la quantité é je défini le type du client (membre ou pas membre) j'affiche le montant dans un champs. ALors comment puis-je procéder??,
paradeofphp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/12/2006, 11h42   #4
Membre du Club
 
Avatar de paradeofphp
 
Inscription : décembre 2005
Messages : 312
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 312
Points : 58
Points : 58
Bonjour,
Alors j'ai pensé a faire un formualire sur 2 pages avec transaction.
l'idée consiste à faire dans la première page, les informations du clients plus la quantité qu'il veut acheter. Dans la 2ème page, je metterai le montant après son calcul, et la date du paiement et mode de paiement... et après lorsqu'il valide, je vais stocker le tout dans la base de données.

Que pensez-vous de cette solution et est ce Php gère les transactions??? Merci
paradeofphp est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h39.


 
 
 
 
Partenaires

Hébergement Web