Jump to content

Moyen de récupérer le panier courant


Samos

Recommended Posts

Bonjour,

  Je travaille sur prestashop 1.7 et j'aimerais récupérer (grâce a une requête SQL ou autre) le contenu du panier courant afin de proposer un devis aux clients, cependant, je ne pense pas avoir le niveau suffisant pour le faire. J'aimerais récupérer le nom du produit ainsi que son image. Merci d'avance !

Link to comment
Share on other sites

<?php
        require(dirname(__FILE__).'/../config/config.inc.php');
        global $smarty, $cart;
        $cartProducts = $this->getProducts();
        foreach ($cartProducts as $produit) {
            print(produit);
        }

?>

Voici mon code, pas d'erreur mais la page deviens blanche après cette partie.. et pas de produits ou panier. Merci encore !

Link to comment
Share on other sites

J'ai oublié de préciser que je travaille sur fichier .php que je vais par la suite transformer en pdf.

J'ai besoin d'afficher si possible le nom du produit, son image ainsi que son prix.

Je me suis rendu sur des forums je pense, assez ancien pour les variables globales (qui ont été remplacées par context je crois)

Link to comment
Share on other sites

<?php
        require(dirname(__FILE__).'/../config/config.inc.php');
        $context = new Context();
        $cart = new Cart($context);
        $cartProducts = $cart->getProducts();
        print_r($cartProducts);
?>

 

En écrivant ceci, seul le mot Array() s'affiche. C'est un tableau mais je n'arrive pas a afficher les élément de celui ci. 

En mettant print a la place de print_r les parenthèse disparaissent pour ne laisser que le mot Array.

 

En faisant un var_dump :

array (size=0)
  
Edited by Samos (see edit history)
Link to comment
Share on other sites

effectivement il y a du boulot

On initialise pas un objet de type cart avec un context (qui est un autre objet)

<?php
        require(dirname(__FILE__).'/../config/config.inc.php');

// Initialisation du contexte
        $context = Context::getContext() ;

// Récupération du panier depuis son id dans le contexte
        $cart = new Cart($context->cart->id);
        $cartProducts = $cart->getProducts();

// Affichage du contenu
        p($cartProducts);

 

 

  • Thanks 1
Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,

Je reviens sur ce post car un message d'erreur s'affiche avec votre code ou peut être que je m'y prend mal :

On 07/09/2018 at 5:20 PM, Eolia said:

// Récupération du panier depuis son id dans le contexte
        $cart = new Cart($context->cart->id);

 Trying to get property of non-object

Je ne comprend pas.

Encore merci !

Link to comment
Share on other sites

Pourtant bel et bien un objet :

Je vous met les parties ou il y a 'cart' :

object(Context)[10]
  public 'cart'  
  public 'customer'  
object(Cookie)[20]
      protected '_content'  
        array (size=8)
          'date_add'    (length=19)
          'id_lang'    (length=1)
          'id_currency'    (length=1)
          'id_guest'    (length=2)
          'id_connections'    (length=3)
          'last_visited_category'    (length=2)
          'id_cart'    (length=2)
          'checksum'    (length=10)

Merci !

Edited by Samos (see edit history)
Link to comment
Share on other sites

Et pourtant il est bien rempli, Je pense mal m'y prendre ... le dossier devisam c'est moi qui l'ai créé et le fichier php également.

J'ai créé un formulaire sur cart.tpl et j'ai mis mon fichier php en action du form. Il ne doit pas y avoir de lien avec la boutique... Merci quand même pour votre aide !

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...