cvbdev Posted May 25, 2010 Share Posted May 25, 2010 Bonjour,Dans le fichier Shopping-Cart-Product.tpl ( qui affiche le recapitulatif de la commande) j'aimerais afficher une information complémentaire (à la suite de $product.name) venant d'une autre base de données (chaine qui serait à retraiter pour extraire les bonne infos). getProductLink($product.id_product, $product.link_rewrite, $product.category)|escape:'htmlall':'UTF-8'}">{$product.name|escape:'htmlall':'UTF-8'} {if $product.attributes}getProductLink($product.id_product, $product.link_rewrite, $product.category)|escape:'htmlall':'UTF-8'}">{$product.attributes|escape:'htmlall':'UTF-8'}{/if} Savez-vous comme je pourrais procéder ? D'avance merci !++ Link to comment Share on other sites More sharing options...
Olecorre Posted May 25, 2010 Share Posted May 25, 2010 Bonjour,Faut déjà voir du côté php comment récupérer l'information, la mettre dans le tpl est le plus simple, mais il faut l'avoir !Cdt Link to comment Share on other sites More sharing options...
cvbdev Posted May 25, 2010 Author Share Posted May 25, 2010 Bonjour,Merci de ta réponse ! Chaque fichier Tpl possède normalement un fichier de compil associé ! Là ce n'est pas le cas, je n'arrive pas à voir le chemin, et surtout quand les variables PHP. De manière générale ça se passe où cette affectation ? Merci ++ Link to comment Share on other sites More sharing options...
BVince Posted May 25, 2010 Share Posted May 25, 2010 Bonjour,tu peux toujours essayer avec les balises {php} {/php} dans le tpl... Link to comment Share on other sites More sharing options...
cvbdev Posted May 25, 2010 Author Share Posted May 25, 2010 Bonjour BVince ! Je vais essayer ça et de requete sur la table que je désires ! ++ Link to comment Share on other sites More sharing options...
cvbdev Posted May 25, 2010 Author Share Posted May 25, 2010 Sauriez-vous comment on fait pour voir le contenu d'un tableau dans un error_log sans faire de foreach ? error_log('Pasage 1 '.time().' ', 3, "mes-erreurs.log.txt"); Merci ++ Link to comment Share on other sites More sharing options...
BVince Posted May 25, 2010 Share Posted May 25, 2010 Bonjour,Je sais qu'un print_r renvoie le tableau en affichage écran mais je ne sais pas ce que ça peut faire si on passe cette fonction dans le error_log, à essayer comme suit : error_log(print_r($tableau), 3, "Trace.log"); Link to comment Share on other sites More sharing options...
cvbdev Posted May 25, 2010 Author Share Posted May 25, 2010 Re,De même j'ai vu par allieur qu'intégrer du PHP dans les fichiers TPL n'était pas recommandé, quels sont les risques ? Link to comment Share on other sites More sharing options...
BVince Posted May 25, 2010 Share Posted May 25, 2010 Re,Donc foreach....Entre pas conseillé et interdit il y a une marge, quand j'ai besoin de le faire, je le fais... Link to comment Share on other sites More sharing options...
cvbdev Posted May 25, 2010 Author Share Posted May 25, 2010 re,J'ai trouvé la réponse que je cherchais....Pour mon fichier TPL les données sont insérés dans l'object product, du fichier Cart.php ! public function getProducts($refresh = false, $id_product = false) { if (!$this->id) return array(); if ($this->_products AND !$refresh) return $this->_products; $sql = ' SELECT cp.`id_product_attribute`, cp.`id_product`, cp.`quantity` AS cart_quantity, pl.`name`, pl.`description_short`, pl.`available_now`, pl.`available_later`, p.`id_product`, p.`id_category_default`, p.`id_supplier`, p.`id_manufacturer`, p.`id_tax`, p.`on_sale`, p.`ecotax`, p.`quantity`, p.`price`, p.`reduction_price`, p.`reduction_percent`, p.`reduction_from`, p.`reduction_to`, p.`weight`, p.`out_of_stock`, p.`active`, p.`date_add`, p.`date_upd`, t.`id_tax`, tl.`name` AS tax, t.`rate`, pa.`price` AS price_attribute, pa.`quantity` AS quantity_attribute, pa.`ecotax` AS ecotax_attr, i.`id_image`, il.`legend`, pl.`link_rewrite`, cl.`link_rewrite` AS category, CONCAT(cp.`id_product`, cp.`id_product_attribute`) AS unique_id, IF (IFNULL(pa.`reference`, \'\') = \'\', p.`reference`, pa.`reference`) AS reference, IF (IFNULL(pa.`supplier_reference`, \'\') = \'\', p.`supplier_reference`, pa.`supplier_reference`) AS supplier_reference, IF (IFNULL(pa.`weight`, 0) = \'\', p.`weight`, pa.`weight`) AS weight_attribute, IF (IFNULL(pa.`ean13`, \'\') = \'\', p.`ean13`, pa.`ean13`) AS ean13 FROM `'._DB_PREFIX_.'cart_product` cp LEFT JOIN `'._DB_PREFIX_.'product` p ON p.`id_product` = cp.`id_product` LEFT JOIN `'._DB_PREFIX_.'product_lang` pl ON (p.`id_product` = pl.`id_product` AND pl.`id_lang` = '.intval($this->id_lang).') LEFT JOIN `'._DB_PREFIX_.'product_attribute` pa ON (pa.`id_product_attribute` = cp.`id_product_attribute`) LEFT JOIN `'._DB_PREFIX_.'tax` t ON (t.`id_tax` = p.`id_tax`) LEFT JOIN `'._DB_PREFIX_.'tax_lang` tl ON (t.`id_tax` = tl.`id_tax` AND tl.`id_lang` = '.intval($this->id_lang).') LEFT JOIN `'._DB_PREFIX_.'product_attribute_image` pai ON (pai.`id_product_attribute` = cp.`id_product_attribute`) LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_product` = cp.`id_product` AND (IF(pai.`id_image`, pai.`id_image` = i.`id_image`, i.`cover` = 1))) LEFT JOIN `'._DB_PREFIX_.'image_lang` il ON (i.`id_image` = il.`id_image` AND il.`id_lang` = '.intval($this->id_lang).') LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (p.`id_category_default` = cl.`id_category` AND cl.`id_lang` = '.intval($this->id_lang).') WHERE `id_cart` = '.intval($this->id).' '.($id_product ? ' AND cp.`id_product` = '.intval($id_product) : '').' AND p.`id_product` IS NOT NULL GROUP BY unique_id ORDER BY cp.date_add ASC'; (...) Suffit d'apeller ensuite le nom (quantity, name,...) pour voir les valeurs désirés affichés ! getProductLink($product.id_product, $product.link_rewrite, $product.category)|escape:'htmlall':'UTF-8'}">{$product.quantity|escape:'htmlall':'UTF-8'} Pour intégrer une nouvelle valeur suffit de retoucher légèrement la requete...Bonne journé...++ Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now