PDA

Voir la version complète : formulaire ou bdd


Julie
21/11/2003, 14h01
bonjour,
une question toute différente de l'autre de ce forum. Pour un autre site.

Je doit créer un catalogue proposant une 40aine de produits. Ce catalogue doit déboucher vers un recapitulatif de la commande que le client doit ensuite imprimer et envoyer par fax ou courier.
Chaque produit doit pouvoir etre acheté en plusieurs quantité ou non.
Il me faut donc un petit menu déroulant devant chaque produit pour dire :
Nombre de produit X : "champ vide" (a remplir par le client)
Ceci en dessous donc de chaque produit.

Il faudrait ensuite un bouton en bas "Visualiser ma commande" . En cliquant sur ce bouton ceci emmenerait sur un recapitulatif des produits selectionnés.

Donc j'ai deja fait cela en faisant un formulaire tout bête du genre :
PAGE PRODUITS
<form method="post" action="traitement.php">
Les champs vides du genre :
<input type="text" name="nombre1" value="">
puis qui finit par :
<input name="submit2" type="submit" value="Visualiser ma commande">

En cliquant ca envoye donc vers "traitement.php"

Traitement.php est donc constitué d'un design + en contenu ceci :
echo " Nombre d'article X : $nombre1<br>";

J'en arrive aux problemes :
Probleme 1 :
Mon produit à un prix. Chaque produit a donc un prix. Comment faire calculer que $nombre1 * prix produit = total 1 ???
Est-ce possible avec ce systeme de formulaire ?
Si ce n'est pas possible pouvez vous me dire quelle alternative ais-je ?

Probleme 2
Mes produits sont rangés en 5 catégories.
Ceci implique normalement que mes produits sont donc rangés dans 5 pages html différentes. Le probleme est que dans mon systeme, je peut faire cela seulement si tous mes produits sont sur la meme page ! Comment faire pour que quelqu'un selectionne par exemple 10 produits X sur la page 1, qu'il passe ensuite sur 20 produits Z sur la page 2... puis qu'il clique sur "visualiser ma commande" et qu'il le comptage des deux commandes ????

Après c'est simple, quand est affiché le recapitulatif de la commande, le client doit juste l'imprimer et c'est finit. Donc pas d'envoi d'email ou autre...

Sans trop bien m'y connaitre...j'ai donc bien peur qu'il faille que je passe par une basse de donnée... Qui pourrait me conforter ou m'orienter vers des gens compétents pour m'aider ? :004: :( :( :(
Merci beaucoup à vous

Thx1133
21/11/2003, 15h18
Pour le probleme 1, il te suffit simplement de faire $total = $nombre1 * $prixproduit1, autrement dis, passer également le prix unitaire des produits sélectionnés en parametre, ou bien tenir a jour dans le fichier traitement.php les prix unitaires si tu ne veux pas les passer en variable.

Pour le probleme 2, tu pourrais si tu souhaites te passer d'une base de données, faire transiter toutes les info d'une page a une autre. C'est assez lourd car il faut pouvoir tout faire passer quelque soit l'ordre de transition d'une page a l'autre mais c'est réalisable :)

Julie
21/11/2003, 19h19
je ne savais pas que je pouvais faire faire des multiplications... je vais m'y lancer.

Sinon pour le probleme 2, pourrais-tu m'expliquer plus précisemment comment proceder ?

Et pour finir, qui peut me conseiller un forum plus spécialisé qui m'aiderait peut-être mieux car ici c'est vBulletin ?

Merci beaucoup

thor
21/11/2003, 19h35
utilise le script php www.oscommerce.com

Julie
21/11/2003, 20h12
thor : merci, je vais regarder cela de plus pret, mais ca m'a l'air d'etre une grosse machine et j'ai toujours l'impression que le gratuit cache quelque chose.

Thx1133
Bon, j'avances petit à petit je commence à faire des tests

regardez voir ici (http://www.caunesil.com/zonetest/)

sur la page index.php j'ai donc mis :
<form name="guyot1" method="post" action="traitement.php">
<p>&nbsp;</p>
<table width="40%" border="1" align="center">
<tr>
<td width="48%"><span class="Style8">Arcticle</span></td>
<td width="27%"><span class="Style8">Nombre</span></td>
<td width="25%">Prix</td>
</tr>
<tr>
<td><span class="Style10">Produit 2 </span></td>
<td><input type="text" name="produit1"></td>
<td><input name="champcache1" type="hidden" value="30">
30 &euro; </td>
</tr>
<tr>
<td>TOTAL</td>
<td>&nbsp;</td>
<td><span class="Style11"></span></td>
</tr>
<tr>
<td>&nbsp;</td>
<td><input type="submit" name="Submit" value="Visualiser ma commande"></td>
<td><input type="reset" name="Submit2" value="R&eacute;initialiser"></td>
</tr>
</table>
</form>

et dans traitement.php j'ai repris les valeurs :

<?

//On affiche ici les informations saisie
echo " Produit 1 $total=$produit1*$champcache1<br>";

?>

Mais malheuresement ca m'affiche :
Produit 1 =20*30
au lieu de me mettre le résultat de l'opération 20*30 !!!

Dois-je mettre $total sur la page index.php ? Mais comment ?

Ensuite je me rends compte qu'il me faut un sous total en bas de la page index.php déjà. Est-ce possible ? Sinon je le ferait pas...

c'est dur dur tout cela, mais c'est passionnant en tout les cas :074: :074:

ramax
21/11/2003, 23h51
echo " Produit 1 $total=$produit1*$champcache1<br>";

oui c normal ya des " :)
essai avec ca :

$total=$produit1*$champcache1;
echo " produit 1".$total;

( si ca marche pas c parcequ il est trop tard pour que je reflaichisse :D )

Akex
22/11/2003, 04h27
echo "produit 1".$total est déconseillé pour les débutants (explique voir pourquoi in doit mettre un . , c'est un coup à leur faire mélanger les pinceaux.

echo "produit 1 $total"; bien qu'étant basique est plus compréhensible :).

ramax
22/11/2003, 13h11
moi je pense que cet histoire de " . " c extremement important et que les debutant doivent utiliser la concaténation , ca facilite la relecture et c extrement util dans les longues chaines

mais bon il y a telement de facon de codé le php :p

Pitchoune
22/11/2003, 14h18
Mais bon, il y a tellement de facon de coder le php :p
C'est ça qui est très intéressant !

Julie
24/11/2003, 02h16
j'ai eut Ramax via msn
il m'a aidé durant 5 heures.

Si ça, n'est pas vraiment de la gentillesse ! Encore merci à lui.

ramax
24/11/2003, 15h32
c 'est un plaisir de bosser avec toi :)

Foularou
24/11/2003, 15h41
non ne lui dit pas ca apres il va avoir des chevilles enormes;) et c pas toi ki te le coltine +- 8heure/jour.
mais bon c vrai qu'il est sympa le bougre ;)

ramax
24/11/2003, 15h44
julie j'en profite pour te presenter foularou donc ... le gars dont je t parlé qui ma donné sont temp pour m'aprendre et m'aider dans le php :)