[PHP/MySQL] Calcul d'un prix en fonction d'une dimension

Calcul d'un prix en fonction d'une dimension [PHP/MySQL] - PHP - Programmation

Marsh Posté le 14-11-2007 à 13:00:21    

Salut à tous
 
Voilà je suis sur un projet en ce moment pour mon école, et je sèche sur un truc. Je dois créer une boutique en ligne de draps en PHP5/MySQL5.
 
J'ai donc créer une page présentant 3 catégories de produits :
Draps laines
Draps soies
et Draps autres (les noms ne sont pas important, il faut juste que le principe fonctionne).
 
Quand l'internaute clique sur "draps laines" par exemple, il tombe sur à nouveaux 3 catégories (avec description, photo etc ...) :
Qualité faible
Qualité moyenne
Bonne qualité
 
Et c'est là que j'ai un probleme. Si c'était un prix fixe, il suffirait de l'inclure dans la base de donnée or le prix dépend de la surface que l'internaute veut acheter, et le prix varie d'une qualité à l'autre.
Par exemple :
Qualité faible : 10€ Par mètre carré
Qualité moyenne : 15% de plus que le prix de la qualité faible
Qualité haute : 25% de plus que le prix de la qualité faible
 
 
Comment puis-je faire pour que l'internaute choissise une qualité puis arrive sur une page où il peut entrer les dimensions du draps qu'il souhaite acheter et que le prix soit calculé en fonction de ces dimensions ?
J'ai beau réfléchir je sèche complètement là. Je suis perdu, il y a trop de données à prendre en compte :'(
 
 
Sinon après il faudra calculer le frais de port et la TVA mais ça c'est bon, j'ai mon idée ça ne devrait pas être trop compliqué.


Message édité par cli142 le 14-11-2007 à 13:07:49
Reply

Marsh Posté le 14-11-2007 à 13:00:21   

Reply

Marsh Posté le 14-11-2007 à 13:07:06    

bah il suffit d'un prix de référence pour une qualité et une surface donnée, et une règle de 3...

Reply

Marsh Posté le 14-11-2007 à 13:08:30    

j'ai un prix de référence : 10€ le mètre carré pour la qualité la plus faible.
 
Comment ça une règle de trois ?

Reply

Marsh Posté le 14-11-2007 à 13:12:37    

Puis le prix ne varie pas qu'en fonction de la qualité, mais également suivant les dimensions (c'est surtout ça qui me bloque).

Reply

Marsh Posté le 14-11-2007 à 13:44:45    

prix du drap = prix du metre carré * qualité
surface achetee = longueur * largeur
prix total = surface achetee * prix du drap
 
j'ai raté un truc ?

Reply

Marsh Posté le 14-11-2007 à 14:36:09    

non t'as rien raté mais c'est bizar que ça paraisse d'un coup si simple ...
 
je vais essayer de coder ça on verra se que ça va donner.  
 
Si t'as une idée du code que ça peut donner hésites pas ;)

Reply

Marsh Posté le 14-11-2007 à 14:39:50    

rajoute des $ et des ; et t'as le code...

Reply

Marsh Posté le 14-11-2007 à 14:41:09    

je te remercie de ta précieuse aide !!!!
 
ça me parait encore bizar que ça soit finalement si simple mais ça semble correct.
 
Encore merci punkrod !!

Reply

Marsh Posté le 14-11-2007 à 14:45:44    

Encore une chose, la longueur et la largeur sont saisies par l'internaute.
Comment je peux faire pour récupérer des informations saisies dans un champs texte par l'utilisateur et les utilisées dans un calcul ?

Reply

Marsh Posté le 14-11-2007 à 14:47:04    

c'est bon j'ai compris.
je vais voir se que ça donne.

Reply

Marsh Posté le 14-11-2007 à 14:47:04   

Reply

Marsh Posté le 14-11-2007 à 14:57:16    

Comment je peux faire pour transformer un résultat en fonction ?
 
 
Voilà se que je viens de faire. Le calcul de la surface achetée s'opère mais j'aimerais le garder en mémoire pour pouvoir multiplier le résultat par le prix :
 
 
calcul.html
<html>
<body>
<form action="multiplication.php" method="POST">
<input type="text" name="longueur">
<input type="text" name="largeur">
<input type="submit">
</form>
</body>
</html>
 
 
multiplication.php :
<?php
$c = $_POST['longueur'] * $_POST['largeur'];
echo $c;
?>


Message édité par cli142 le 14-11-2007 à 14:58:12
Reply

Marsh Posté le 14-11-2007 à 15:10:07    

je me retrouve avec ça dans le fichier multiplication.php :
 
<?php
$surface = $_POST['longueur'] * $_POST['largeur'];
echo $surface;
 
$totalprice = $prixdraps * $surface;
echo $totalprice;
?>
 
Est-ce exact ?
 
Autre question, comment faire pour aller recherche une information dans la base de donnée (prix du store pour un mètre carré) ?


Message édité par cli142 le 14-11-2007 à 15:19:47
Reply

Marsh Posté le 14-11-2007 à 15:27:40    

Euh, tu crois pas qu'il serait bien que tu apprennes les bases du PHP avant de te lancer dans ce projet? Le prends pas mal, mais beaucoup de tes dernières questions sont hyper triviales, quand même [:pingouino]

Reply

Marsh Posté le 14-11-2007 à 15:39:56    

c'est se que je suis entrain de faire.
 
ça fonctionne avec un prix fixe défini dans le script, il me reste plus qu'à remplacer ce prix par un prix recherché dans la base de donnée et c'est bon.


Message édité par cli142 le 14-11-2007 à 15:41:19
Reply

Marsh Posté le 14-11-2007 à 15:56:55    

Voici mon code php :
 
<?php
$prixdraps = 15.50;
$surface = $_POST['longueur'] * $_POST['largeur'];
$totalprice = $prixdraps * $surface;
?>
<br />
<br />
<?php
echo 'Le prix total est de : '.$totalprice.'€<br />';
?>
 
 
Dans la base de donnée, j'ai créer une table dans laquelle j'ai associé un prix à un id.
 
Comment puis-je faire pour remplacer la valeur fixe (ici 15.50) par la valeur inscrite dans la base de donnée ?


Message édité par cli142 le 14-11-2007 à 16:08:57
Reply

Marsh Posté le 14-11-2007 à 16:35:44    

@ $db = new mysqli('localhost', 'user', 'password', 'nom base');
if (mysqli_connect_errno())
{
echo 'Erreur. Merci de réessayer plus tard.';
exit;
}
 
$prixdraps = "select value from prix where "id" like % '101010'";
 
 
 


Message édité par cli142 le 14-11-2007 à 18:04:44
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed