Jump to content

aide requete Category.php affichage smarty


Recommended Posts

Je souhaite afficher les attributs pour un groupe specifique dans le listing des produits.
J'ai trouvé le bout de code suivant auquel j'ai ajouté a la selection name, la selection de id_attribute

     $idgrp = 1;        
        for ($i=0;$i<=count($result);$i++){        
           $nouvelle_requette =  'SELECT al.name as name,pa.id_product_attribute as id_attribute
           FROM '._DB_PREFIX_.'product_attribute pa
           JOIN '._DB_PREFIX_.'product_attribute_combination pac ON pac.id_product_attribute = pa.id_product_attribute
           JOIN '._DB_PREFIX_.'attribute_lang al ON (al.id_attribute = pac.id_attribute AND al.id_lang = '.intval($id_lang).')
           JOIN '._DB_PREFIX_.'attribute a ON (a.id_attribute_group = '.$idgrp.' AND a.id_attribute = pac.id_attribute)
           WHERE pa.id_product = '.$result[$i]['id_product'].' AND pa.quantity >= 1';
           $attributs = Db::getInstance()->ExecuteS($nouvelle_requette);
           if($attributs){
               foreach($attributs as $tab){
                   $result[$i]['attribute'][]= "$tab[name]";

               }
           }
       }




Pour afficher le nom de l'attribut j'utilise donc :

{foreach from=$product.attribute item=attribute name=attribute}
           {$attribute}
       {/foreach}





Mais comment je peux faire pour y ajouter aussi l'affichage de id_attribute que je selectionne dans ma requete ?

Link to comment
Share on other sites

Bonjour,

A priori en rajoutant

$result[$i]['attribute']['name']  []= "$tab[name]";
$result[$i]['attribute']['id_attribute']  []= "$tab[id_attribute]";



Puis dans le TPL :

{foreach from=$product.attribute item=attribute name=attribute}
           Nom : {$attribute.name}
           ID : {$attribute.id_attribute}
{/foreach} 



Une piste, pas pu trop testé mais ça irait dans la logique du code.
Toujours bien vu le prénom féminin ;-)

Link to comment
Share on other sites

Avec

         $result[$i][attribute][name]= "$tab[name]"; 
         $result[$i][id_attribute][id_attribute]= "$tab[id_attribute]";


cela semble m'afficher que le premier caractere de name et de l'id attribute

si je rajoute


$result[$i][attribute][name][]= "$tab[name]"; 
         $result[$i][attribute][id_attribute][]= "$tab[id_attribute]";



Cela n'affiche plus rien.

Link to comment
Share on other sites

Pas d'autre idée ?

Bonjour,

A priori en rajoutant

$result[$i]['attribute']['name']  []= "$tab[name]";
$result[$i]['attribute']['id_attribute']  []= "$tab[id_attribute]";



Puis dans le TPL :

{foreach from=$product.attribute item=attribute name=attribute}
           Nom : {$attribute.name}
           ID : {$attribute.id_attribute}
{/foreach} 



Une piste, pas pu trop testé mais ça irait dans la logique du code.
Toujours bien vu le prénom féminin ;-)

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