retirer un $row->product_id du cart

  • Posts: 2605
  • Thank you received: 65
11 years 5 months ago #77054

Sous certaines conditions je voudrais automatiquement retirer certains produits du cart

comment faire ça dans a boucle du cart.php ?

par exemple :

foreach($this->rows as $i => $row){
if( $row->product_id== 300 && $macondition == 0){
              unset($this->rows[$i]);        
}
}
mais ça ne marche pas

ou bien quelle autre méthode hors de la boucle pour retirer un $row->product_id du cart définitivement (pas juste l'affichage) ?

je voudrais eviter un DELETE FROM ##__cart_product WHERE cart_product_id = $row->cart_product_id ou $i

merci

Last edit: 11 years 5 months ago by erickb.

Please Log in or Create an account to join the conversation.

  • Posts: 26017
  • Thank you received: 4004
  • MODERATOR
11 years 5 months ago #77116

Bonsoir,

Je pencherais pour l'utilisation du trigger onBeforeCartUpdate.
Ce trigger a pour paramètres : &$cartClass, &$cart, $product_id, $quantity, $add, $type, $resetCartWhenUpdate, $force, &$do

Il est ainsi possible de gérer le contenu du cart avant sa sauvegarde en base de données.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 2605
  • Thank you received: 65
11 years 5 months ago #77117

et il n'y a aucune fonction à la volée ? la même qui est utilisée quand on clique sur le bouton supprimer d'un produit du cart, quelle fonction hikashop est appelée ?

sinon le plus simple est DELETE FROM #__hikashop_cart_product WHERE cart_product_id = $row->cart_product_id non ?


merci

Last edit: 11 years 5 months ago by erickb.

Please Log in or Create an account to join the conversation.

  • Posts: 26017
  • Thank you received: 4004
  • MODERATOR
11 years 5 months ago #77124

Bonsoir,

Il est aussi possible de faire la modification du cart et d'appeler la fonction $cartClass->save($cart);
Mais cela fera surement plus de requête que de faire le "DELETE" à la main.

Cordialement,


Jerome - Obsidev.com
HikaMarket & HikaSerial developer / HikaShop core dev team.

Also helping the HikaShop support team when having some time or couldn't sleep.
By the way, do not send me private message, use the "contact us" form instead.

Please Log in or Create an account to join the conversation.

  • Posts: 2605
  • Thank you received: 65
11 years 5 months ago #77125

ok je delete


merci Jerome

Please Log in or Create an account to join the conversation.

Time to create page: 0.044 seconds
Powered by Kunena Forum