panier

panier - PHP - Programmation

Marsh Posté le 25-05-2005 à 17:16:25    

bonjour,
 
j'ai un problème au niveau de la récupération des valeurs dans mon panier.
lorsque je commande l'article, il est stocké dans mon panier et je le vois. Il y a alors un bouton "continuer", si j'appuye dessus, je me retrouve sur une autre page où il y a les autres articles du site, mais à ce moment, je perds ce qu'il  y a dans mon panier, quelqu'un pourrait-il venir à mon secours!!!
 
voici le code qui affiche le contenu du panier:
 

Code :
  1. <?php
  2.   include ('book_sc_fns.php');
  3.   session_start();
  4.   @ $new = $HTTP_GET_VARS['new'];
  5.   if($new)
  6.   {
  7.     //nouvel article sélectionné
  8.     if(!isset($HTTP_SESSION_VARS['cart']))
  9.     {
  10.       $HTTP_SESSION_VARS['cart'] = array();
  11.       $HTTP_SESSION_VARS['items'] = 0;
  12.       $HTTP_SESSION_VARS['total_price'] ='0.00';
  13.       //initialisation du caddie  
  14.     }
  15.     if(isset($HTTP_SESSION_VARS['cart'][$new]))
  16.       $HTTP_SESSION_VARS['cart'][$new]++;
  17.     else
  18.       $HTTP_SESSION_VARS['cart'][$new] = 1;
  19.     //calcul nombre d'articles et prix total
  20.     $HTTP_SESSION_VARS['total_price'] = calculate_price($HTTP_SESSION_VARS['cart']);
  21.     $HTTP_SESSION_VARS['items'] = calculate_items($HTTP_SESSION_VARS['cart']);
  22.   }
  23.   //si on appuie sur "confirmer"
  24.   if(isset($HTTP_POST_VARS['save']))
  25.   { 
  26.     foreach ($HTTP_SESSION_VARS['cart'] as $isbn => $qty)
  27.     {
  28.       if($HTTP_POST_VARS[$isbn]=='0')
  29.         unset($HTTP_SESSION_VARS['cart'][$isbn]);
  30.       else
  31.         $HTTP_SESSION_VARS['cart'][$isbn] = $HTTP_POST_VARS[$isbn];
  32.     }
  33.     $HTTP_SESSION_VARS['total_price'] = calculate_price($HTTP_SESSION_VARS['cart']);
  34.     $HTTP_SESSION_VARS['items'] = calculate_items($HTTP_SESSION_VARS['cart']);
  35.   }
  36.   do_html_header('Your shopping cart');
  37.   if($HTTP_SESSION_VARS['cart']&&array_count_values($HTTP_SESSION_VARS['cart']))
  38.     display_cart($HTTP_SESSION_VARS['cart']);
  39.   else
  40.   {
  41.     echo "<p>Pas d'articles dans le panier</p>";
  42.     echo '<hr />';
  43.   }
  44.   $target = 'index.php';
  45.   // si on a mis un article dans le caddie, on continue la visite dans la même catégorie
  46.   if($new)
  47.   {
  48.     $details =  get_book_details($new);
  49.     if($details['catid'])   
  50.       $target = 'show_cat.php?catid='.$details['catid'];
  51.   }
  52.   display_button($target, 'continue-shopping', 'Continue Shopping'); 
  53.   display_button('checkout.php', 'go-to-checkout', 'Go To Checkout'); 
  54.  
  55.   do_html_footer();
  56. ?>


 
de plus, j'ai un soucis avec le "foreach", php dit qu'il n'a pas de tableau en argument alors que si!!!
 
donc voilà, si quelqu'un à une piste, je le remercie d'avance...

Reply

Marsh Posté le 25-05-2005 à 17:16:25   

Reply

Marsh Posté le 25-05-2005 à 17:19:24    

Je voulais juste te conseiller de ne pas utiliser "new" comme nom de variable etant donné que c'est un mot reservé du langage PHP !
 
De plus HTTP_SESSION_VARS est deprecié au profit de _SESSION dorenavent :)

Reply

Marsh Posté le 25-05-2005 à 18:35:17    

De plus, le code n'est pas de lui (ce qui l'exclue d'entrée de jeu de la section), et de plus les paniers suivi d'un paiement en ligne, c'est réservé à tous sauf à des débutants.


Message édité par Hermes le Messager le 25-05-2005 à 18:35:28

---------------
Expert en expertises
Reply

Marsh Posté le 26-05-2005 à 09:56:52    

Hermes le Messager a écrit :

De plus, le code n'est pas de lui (ce qui l'exclue d'entrée de jeu de la section), et de plus les paniers suivi d'un paiement en ligne, c'est réservé à tous sauf à des débutants.


ben nan le code est pas de moi, il vient du livre: "PHP & MySQL" de Luke Welling et Laura Thomson, et je vois pas ce que ça peut te faire que je teste les codes qu'il y a dans mon bouquin :kaola: !!!

Reply

Marsh Posté le 26-05-2005 à 09:58:27    

afbilou a écrit :

Je voulais juste te conseiller de ne pas utiliser "new" comme nom de variable etant donné que c'est un mot reservé du langage PHP !
 
De plus HTTP_SESSION_VARS est deprecié au profit de _SESSION dorenavent :)


 
oki, ben je vais voir si c'est pas le 'new' alors ;) ...

Reply

Sujets relatifs:

Leave a Replay

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