ajouter un article au panier

ajouter un article au panier - PHP - Programmation

Marsh Posté le 21-10-2004 à 20:33:59    

bonjour!
voila G quelques petits soucis :
G une page qui affiche la fiche produit d'un article
et quand on clique sur un bouton, il envoi cet article au panier grace au parametre 'new'

Code :
  1. echo'<a href="index.php?page=caddy&new=',$ref,'"><img src=envoyer_au_caddie.jpg'></a>';


jusque la pas de probleme
mais la ou ca se complique (pour moi) C que je voudrais egalement envoyer des tailes (chaque article peut avoir plusieurs tailles)

Code :
  1. <?
  2. echo '<select class="select" name="taille">';
  3. $tailles = explode(',', $article[10]);
  4. for($i = 0; $i < count($tailles); $i++)
  5. echo '<option value="' . $tailles[$i] . '">' . $tailles[$i] . '</option>';
  6. echo '</select>';
  7. ?>


vous allez me dire de faire un formulaire ...oui ... mais comment?
get/post?peut-on encapsuler que le select?comment envoyer la taille selectionnée?je ne sais pas trop comment m'y prendre.
 
merci de votre aide


Message édité par attentio le 24-03-2005 à 21:03:37

---------------
L'ordinateur a de la mémoire mais aucun souvenir ...
Reply

Marsh Posté le 21-10-2004 à 20:33:59   

Reply

Marsh Posté le 21-10-2004 à 20:41:18    

Tu peux faire comme tu veux.
Comme ca par exemple:

Code :
  1. <form action="index.php?page=caddy" method="post">
  2.    <select name="taille">
  3.       <option value="">Taille x</option>
  4.       ...
  5.       </option>
  6.    </select>
  7.    <input type="hidden" name="idarticle" value="l-id-de-larticle" />
  8.    <input type="submit" value="Ajouter au caddy" />
  9. </form>


Message édité par Ayuget le 21-10-2004 à 20:41:32
Reply

Marsh Posté le 21-10-2004 à 20:58:09    

daccors mais mon parametre new, j'en fais koi?

Code :
  1. <?//caddy.php
  2.    $new = $_GET'new'];
  3. if($new)
  4.   {
  5.     if(!isset($_SESSION['caddy']))
  6.     {
  7.       $_SESSION['caddy'] = array();
  8.       $_SESSION['produits'] = 0;
  9.       $_SESSION['prix_total'] ='0.00';
  10.     }
  11.     if(isset($_SESSION['caddy'][$new]))
  12.       $_SESSION['caddy'][$new]++;
  13.     else
  14.       $_SESSION['caddy'][$new] = 1;
  15. ?>


Message édité par attentio le 21-10-2004 à 20:58:57
Reply

Marsh Posté le 21-10-2004 à 21:01:10    

C'est quoi exactement ton paramètre new?


Message édité par Ayuget le 21-10-2004 à 21:02:41
Reply

Marsh Posté le 21-10-2004 à 21:03:00    

ca correspond a l'identifiant de l'article

Reply

Marsh Posté le 21-10-2004 à 21:04:17    

...si j'ajoute un article dans le panier l'URL sera :
index.php?page=caddy&new=5667986756

Reply

Marsh Posté le 21-10-2004 à 21:08:15    

oui ben ton identifiant de l'article, c'est ce que j'ai appelé l-id-de-larticle, tu met sa valeur dans un champ hidden.

Reply

Marsh Posté le 21-10-2004 à 21:25:57    

j'ai fait ca :

Code :
  1. echo'<form  action="index.php?page=index_boutique&boutique=caddy" >';
  2. echo 'taille: <select class="select" name="taille">';
  3. $tailles = explode(',', $article[10]);
  4. for($i = 0; $i < count($tailles); $i++)
  5. echo '<option value="' . $tailles[$i] . '">' . $tailles[$i] . '</option>';
  6. echo '</select>';
  7. echo'<input type="hidden" name="idarticle" value="$ref"> ';
  8. echo'<input  type="submit" name"envoyer" value="envoyer">';


 
mais il m'envoi vers la page index.php?taille=s&idarticle=%24ref
au lieu de index.php?page=caddy ...
merci de ton aide

Reply

Marsh Posté le 21-10-2004 à 21:26:59    

houps j'ai oublié le post !!!

Reply

Marsh Posté le 21-10-2004 à 21:27:54    

method="post"

Reply

Marsh Posté le 21-10-2004 à 21:27:54   

Reply

Marsh Posté le 21-10-2004 à 21:40:31    

comprends pas !!!
 value="$ref" ca marche pas : dans le code source C ecrit comme ca et non value="67689757"

Reply

Marsh Posté le 21-10-2004 à 21:42:53    

c'est parceque PHP ne parse pas une chaîne entre simples quotes.
La solution:

Code :
  1. echo '<input type="hidden" name="idarticle" value="'.$ref.'" />';

Reply

Marsh Posté le 21-10-2004 à 21:57:16    

ben oui, j'uis con  :sleep:  
maintenant ca marche, mais comment recuperer la taille dans le caddy  

Code :
  1. <?//caddy.php  
  2.    $new = $_POST'id_article'];
  3. if($new)
  4.   {
  5.     if(!isset($_SESSION['caddy']))
  6.     {
  7.       $_SESSION['caddy'] = array();
  8.       $_SESSION['produits'] = 0;
  9.       $_SESSION['prix_total'] ='0.00';
  10.     }
  11.     if(isset($_SESSION['caddy'][$new]))
  12.       $_SESSION['caddy'][$new]++;
  13.     else 
  14.       $_SESSION['caddy'][$new] = 1;
  15. ?>


 
merci de ton aide

Reply

Marsh Posté le 21-10-2004 à 21:59:04    

déjà c'est

Code :
  1. $new = $_POST['id_article'];
  2. $lataille = $_POST['taille'];


 
Je comprends pas, si tu sais récupérer la référence de ton article, tu devrais savoir aussi récupérer sa taille  :??:


Message édité par Ayuget le 21-10-2004 à 21:59:13
Reply

Marsh Posté le 21-10-2004 à 22:09:32    

oui, mais comment le mettre dans la var de session caddy?
 
ps : je suis debutant, je me suis donc inspiré d'un script pour implementer le caddy :ange:  
 
merci encore de ton aide

Reply

Marsh Posté le 13-12-2004 à 13:31:37    

bonjour, je réanime ce post pour une simple question, ce systeme de panier est il possible sans BdD ?
ce n'est pas pour de la vente en ligne, mais uniquement pour qu'un visiteur puissent recevoir un mail contenant différent textes récoltés au cours de la visite (d'ou le "panier"
 
voilà voilà..
merci d'avance.

Reply

Marsh Posté le 13-12-2004 à 14:02:01    

je ne pense pas que ce soit tres utile pour toi, dans ton cas, il faut simplement stocker les sessions, non?
 
si j'ai bien compris ce que tu veux faire, ca donnerais :

Code :
  1. //page1.php
  2. $_session['page1']='vous etes allé sur la page 1 ';
  3. //page2.php
  4. $_session['page2']='puis sur la page 2';
  5. //page_envoyer_mail.php
  6. $message=$_session['page1'].$_session['page2'];
  7. mail($adresse,$sujet,$message,$head);

Reply

Marsh Posté le 13-12-2004 à 15:25:10    

ok mais les "sessions" pour moi c'est un peu obscur, qui dit sessions dit identifiants ou pas ?
pace que qui dit identifiants dit DB...non ?

Reply

Marsh Posté le 13-12-2004 à 15:39:00    

de plus je lis dans  
http://cyberzoide.developpez.com/php4/faqsession/

Citation :

Comment conserver des variables de page en page ?

  • En stockant leurs valeurs dans une base de données.  
  • En les enregistrant dans un fichier sur le serveur (mais oblige à donner des droits d'écriture aux visiteurs).  
  • Utiliser des cookies (malheureusement certains navigateurs ne les acceptent pas).  
  • En les envoyant dans l'URL (mais seront visibles aux visiteurs dans la barre d'adresse et leur impose de toujours utiliser les liens hypertextes).  
  • En les passant par un formulaire(mais impose aux visiteurs de cliquer sur un bouton d'envoie).  
  • En utilisant une session.


la solution du formulaire pourrait être la bonne, puisque l'utilisateur doit dans mon cas cliquer sur QQ chose pour demander le texte...
mais pratiquement, pour moi, ça reste flou...


Message édité par gregC le 13-12-2004 à 15:40:28
Reply

Sujets relatifs:

Leave a Replay

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