Un seul bouton "ajouter au panier"

12 messages dans ce sujet

Posté(e) · Signaler ce message

Bonjour,

J'ai déjà posé la question il y a quelques mois, mais je n'ai jamais eu de réponse. Et mon problème est à nouveau d'actualité.

Je n'ai qu'une trentaine de produits à disposition des visiteurs. Certains d'entre eux les connaissent bien et les commandent en quantité.

Aujourd'hui, ils utilisent un tableau Désignation/Prix/Quantité.

Je sais transformer la page achat/index.php et ses satellites pour obtenir ce tableau.

Ce pourquoi j'ai besoin d'aide, c'est pour remplacer les boutons "ajouter au panier" de chaque ligne par le même mais unique en bas de page.

Quelqu'un pour m'aider ?

Merci d'avance.

Cordialement.

PG

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

chaque bouton représente un produit !

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

chaque bouton représente un produit !

Bonjour Paulana,

Ca, je le sais.

Je présente une grille de saisie à l'écran et je veux la récupérer intégralement dans mon panier, avec un seul clic.

Imagine un gestionnaire qui tous les jours valide une commande de multiples produits et qui devrait cliquer sur autant de boutons. Impensable !

Merci d'avance.

PG

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

arf enregistrer plusieurs références par exemple et ajouter le tout a panier en un clic ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

la form de base c'est pas trop un pb ... par contre le traitement d'ajout ... faut le revoir car

<form method="POST" action="<?=$wwwroot?>/achat/caddie_ajout.php" name="ajout<?=$prod['id'] ?>">

donc l'ajout au caddie ce fait par la class caddie qui s'appuit sur l'id du produit

pour la page un truc de ce style:

<form method="POST" action="<?=$wwwroot?>/achat/caddie_ajout.php" name="ajoutnew">

<?php

$sql="select * from peel_produits where etat='1'";

$query=mysql_query($sql);

while ($liste=mysql_fetch_array($query)){

?>

<input type=hidden name=id[] value=<?php echo $liste[id];?> ><?php echo $liste[nom];?>

<input type=texte name=qte[] value='1' >

}

?>

<input type=submit name=ajouter>

</form>

et decortiquer le $_REQUEST pour avoir une liste des id et des quantites ;)

par contre au niveau caddie la gestion de l'ajout et retrait au moment de la validation du caddie ... je pense qu'il faut oublier !! ça risque d'etre une usine à gaz !! ;)

j'ai fait un truc mais avec des produits composé de produits ( des kits quoi sur Izzotek ) mais cela veu dire que 1 kit égal un nombre identique de chaque produits composant ce produits ... c'est peut etre pas ça que tu souhaite ?? :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

une page essai.php dans /achat/modeles

<?

include("../../configuration.inc.php");

echo "<pre>";

print_r($_REQUEST);

echo "</pre>";

$DOC_TITLE = "[PEEL.FR]";

include("$repertoire_modele/haut.php");

$sql="select * from peel_produits";

$qq=mysql_query($sql);

?>

<table class="tabprod" width="740" cellpadding="5" cellspacing="0" border=2>

<form method="post" action="../caddie_ajout.php" >

<?php

while ($prod=mysql_fetch_array($qq)){

?>

<tr>

<td class="black" valign="top"><?php echo $prod[nom];?>

<b>Quantité : </b>

<select name="qte[<?php echo $prod[id];?>]" class="formulaire1">

<option value="0">0</option>

<option value="1">1</option>

<option value="2">2</option>

<option value="3">3</option>

<option value="4">4</option>

<option value="5">5</option>

</select>

</td>

</tr>

<?php

}

?>

<tr><TD><input type="submit" name="ajout2"></TD></tr>

</form>

</table>

<?

include("$repertoire_modele/bas.php");

reste à traiter le $_REQUEST dans une page pour alimenter le caddie

dans caddie_ajout.php

ajouter en bas du fichier

foreach($_REQUEST['qte'] as $key => $value){

if ($value !="0"){

$_SESSION['caddie']->ajout($key, $value);

}

}

chez moi ça marche ... apres tu vire le echo pre $_REQUEST du haut :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonsoir Macao45,

Je viens juste de prendre connaissance de ton aimable travail.

Je vais éplucher ça dès demain et te tiens au courant.

Avec tous mes remerciements.

PG

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

pas de quoi ...

de plus on peut finalement faire du + et du - dans le recap de caddie avant de passer en caisse ...

c'etait donc pas si comliqué ;)

par contre la décos ... j'ai fait vraiment light :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Bonjour à tous, et en particulier à Macao45,

Je viens de tester le code proposé. J'ai quelques variations, sans doute dues à ma version de Peel (la dernière).

La mise en page est pour l'instant le dernier de mes soucis.

Par contre, il faut ajouter dans caddie_ajout.php

$_SESSION['caddie']->ajout($key, $value);

$_SESSION['caddie']->recalc_total();}

sinon le montant total du panier n'est pas recalculé.

Je vais insister car je ne trouve pas le moyen de changer de page après appui sur le bouton.

Au lieu de réafficher la grille de saisie, j'aimerai passer directement à la page /achat/caddie_affichage.php

J'ai tenté

<a class="normal" href="<?php echo $wwwroot?>/achat/caddie_affichage.php">

<input type="submit" name="ajout2" value="Commander"></a>

qui reste inefficace.

Où me trompé-je ?

Merci d'avance pour l'aide apportée.

PG

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

je bricolle 2 3 trucs et je te donne ça tres vite :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

et voiliiiiiiiiiiiiiii

bon dans mon essai.php il faut changer la form

<form method="post" action="../caddie_affichage.php" >
marche

et du coup dans caddie_affichage.php

il faut mettre

include("../configuration.inc.php");

foreach($_REQUEST['qte'] as $key => $value){

if ($value !="0"){

$_SESSION['caddie']->ajout($key, $value);

}

}

$_SESSION['caddie']->recalc_total();

voila ... bonne ... heu tres bonne journée :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Posté(e) · Signaler ce message

Euh ! quel âne suis-je ... :)

J'ai encore bien du boulot sur ce site, mais tu viens de me tirer une énorme épine du pied.

Encore une fois mille mercis.

Bonne continuation, en particulier dans l'art de la bidouille ;)

PG

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !


Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.


Connectez-vous maintenant

Twitter Advisto ecommerce

Facebook PEEL Shopping