Jump to content

[RESOLU]Récupérer la quantité en stock


Recommended Posts

Bonjour,

Je voudrais faire un test sur la quantité en stock de mes produits meilleures ventes.
Pour ce la je fais ça : $bestsellers.0.quantity mais la valeur est toujours nulle, je ne comprends pas pourquoi?


{if $best_sellers|@count > 0}






{if !$priceDisplay}{convertPrice price=$best_sellers.0.price}{else}{convertPrice price=$best_sellers.0.price_tax_exc}{/if}

{$best_sellers.0.name|truncate:27:'...'|escape:'htmlall':'UTF-8'}

                       {if ($best_sellers.0.quantity > 0 OR $best_sellers.0.allow_oosp) AND $best_sellers.0.customizable != 2}
{l s='Add to cart' mod='bestsellers'}
                       {else}
{l s='Out of stock' mod='blockbestsellers'} 
                       {/if}




MERCI,

Link to comment
Share on other sites

Alors dans ce cas, vous pouvez essayez de vérifier dans votre php correspondant si le tableau que vous assignez au fichier .tpl contient bien les valeurs de quantité en faisant par exemple un print_r de votre tableau.

Cordialement,

Franck_R

Link to comment
Share on other sites

Si c'est ce que je pense, dans la requête SQL qui permet de récupérer ces produits, il ne doit pas y avoir p.`quantity` dans la clause SELECT. Si c'est le cas, en le rajoutant ça devrait résoudre le problème. Seulement je ne sais pas quelle méthode vous utilisez pour initialiser votre tableau de produits, pouvez-vous mettre un bout de code qui le montre si le problème n'est pas résolu?
Merci,

Link to comment
Share on other sites

 function hookRightColumn($params)
   {
       global $smarty;
       $currency = new Currency(intval($params['cookie']->id_currency));
       $bestsellers = ProductSale::getBestSalesLight(intval($params['cookie']->id_lang), 0, 5);

       $best_sellers = array();
       foreach ($bestsellers AS $bestseller)
       {
           $bestseller['price'] = Tools::displayPrice(Product::getPriceStatic(intval($bestseller['id_product'])), $currency);
           $best_sellers[] = $bestseller;
       }
       $smarty->assign(array(
           'best_sellers' => $best_sellers,
           'mediumSize' => Image::getSize('medium')));
       return $this->display(__FILE__, 'blockbestsellers.tpl');
   }

Link to comment
Share on other sites

Le problème est bien celui que je vous avez souligné, vous accédez à la quantité en stock du produit en rajoutant ,dans la méthode getBestSalesLight(), la quantité dans la clause SELECT de la requête SQL.

$sql='SELECT p.id_product, p.quantity,.....



en faisant à nouveau un print_r vous verrez que le quantité sera bien présente.


Merci d'indiquer RESOLU dans le titre du sujet si c'est le cas.

Cordialement,

Franck_R

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...