Jump to content

[résolu]problème avec requête sql


Recommended Posts

Bonjour a tous
je cherche a faire une requête sql pour récupère une liste des produits vendus en ventes croisées et qui ne sont pas misent au panier mais j'arrive pas a comparer ma variable avec un tableau (array). voici le code :

        // On recupere les produits du panier
       $products = $cart->getProducts();
       $panier = array();
       foreach($products as $product) {
           array_push($panier, $product['id_product']);
       }  
   $cross = Db::getInstance()->ExecuteS('
               SELECT p.id_product, pl.name, ...
               FROM '._DB_PREFIX_.'product p
               .........................
               WHERE ........ AND cs.id_product NOT IN ('.$product['id_product'].') 
               ');
   $cart->update();
   $smarty->assign(array(
   'cro_pdt' => $cross,     
   ));



cette reqête fonctionne pour un seul produit c a d la comparaison

cs.id_product NOT IN ('.$product['id_product'].')



ce fait pour le dernier id_product seulement et moi je veux que ce soit pour tous les id contenu dans le tableau $panier
merci

Link to comment
Share on other sites

Bonjour, en premier je mettrais des ` exemple : SELECT p.`id_product`, pl.`name`, ... ensuite je testerais cette requête directement sous Mysql en général il indique d’où viens l'erreur si il y en a une

C'est pas plutôt $products au lieu de $product ?

EDIT : non finalement c'est $panier :

cs.id_product NOT IN ('.$panier.') 

Link to comment
Share on other sites

la requête sans la dernière condition marche nickel mais le problème c'est le syntaxe de comparer une variable a un array dans la requête sql qui me pose un problème

cs.id_product NOT IN ('.$panier.')

ça marche pas

Link to comment
Share on other sites

j'ai testé directement sous mysql , et ça me retourne toujours un seul produits. toujours le derniers produits ajouté au panier, on dirait que la dernière condition de ma requête neparcours pas la totalité de mon array $panier
ok j'ai réglé mon problème avec cette ligne

cs.id_product NOT IN (' . implode(', ', $panier) . ')



merci

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