junior_tn85 Posted April 17, 2011 Share Posted April 17, 2011 j'ai essayé d'affiché par une requête SQL un nouveau champs 'unite' de la table product_lang alors j'ai procéder comme suit :j'ai ajouté cette fonction dans /classes/Tools.php: static public function UniteProduits() { $Result = Db::getInstance()->s('SELECT * FROM `' . _DB_PREFIX_ . 'product_lang`'); $tabSako = array(); foreach ($Result as $product_lang) $tabSako[$product['id_product_lang']] = $product['unite']; return $tabSako; } et pour l’appelle j’ai mis ce code dans la page de mon module intitulé tutorial.php $smarty->assign('unite_de_produits', Tools::UniteProduits()); et j’ai mis cela dans le product-list.tpl: {$unite_de_produits} mais il m’affiche Array quelqu’un connais la solution à ce problème.bon mon besoin est le suivant je veux à partir de cette requête affiché les unité de chaque produit stocké au-par-avant dans la base de données.exemple : quantité : 1 KGet merci d’avance Link to comment Share on other sites More sharing options...
junior_tn85 Posted April 18, 2011 Author Share Posted April 18, 2011 les amis il y a pas une solution pour ce problème Link to comment Share on other sites More sharing options...
junior_tn85 Posted April 25, 2011 Author Share Posted April 25, 2011 les amis pourquoi la communauté n'est très actif vraiment je pose une question très fréquente et je trouve comme même pas de réponse même pas des proposition c'est un peu décevant d'un produit aussi bien conçu d'avoir une communauté pas très actif Link to comment Share on other sites More sharing options...
coeos.pro Posted April 25, 2011 Share Posted April 25, 2011 Bonjour, la réponse est simple : $tabSako = array();et vous voulez afficher {$unite_de_produits} autrement dit $tabSako, sauf que $tabSako est un array et pas $unite_de_produitsSans compter que dans : foreach ($Result as $product_lang) $tabSako[$product['id_product_lang']] = $product['unite']; $product_lang ne figure pas dans la 2ème ligne donc le foreach ne sert à rien Un bon conseil : utilisez et développez sous PS1.4.1 Link to comment Share on other sites More sharing options...
Pierre-Yves Posted April 26, 2011 Share Posted April 26, 2011 Salut,Comme le dit coeos, dans ton foreach il y a une erreur. En effet tu utilises la variable $product au lieu de $product_lang.Ensuite dans ton fichier TPL, il est normal que cela t'affiche "Array" car au final la variable est un tableau.Il faut donc utiliser un foreach en Smarty maintenant pour boucler sur le tableau. Link to comment Share on other sites More sharing options...
junior_tn85 Posted April 26, 2011 Author Share Posted April 26, 2011 bonsoir ,merci vraiment pour vos réponses, mais il y a toujours un mais , bon j'ai réctifié mon code et j'ai fais comme suit: static public function UniteProduits() { $Result = Db::getInstance()->s('SELECT * FROM `' . _DB_PREFIX_ . 'product_lang`'); $tabSako = array(); foreach ($Result as $product_lang) $tabSako[$product_lang['id_product_lang']] = $product_lang['unite']; return $tabSako; } et pour l’appelle j’ai mis ce code dans la page de mon module intitulé tutorial.php $smarty->assign('unite_de_produits', Tools::UniteProduits()); et j’ai mis cela dans le product-list.tpl: {$unite_de_produits} mais il m’affiche encore Array et je connait pas comment faire un foreach dans un TPL Link to comment Share on other sites More sharing options...
coeos.pro Posted April 26, 2011 Share Posted April 26, 2011 Il affiche un array car c'est un array que tu essayes d'afficher comme si c'était une valeur.Un peu de lecture : http://www.smarty.net/docsv2/fr/language.function.foreach Link to comment Share on other sites More sharing options...
Pierre-Yves Posted April 27, 2011 Share Posted April 27, 2011 Ta variable $unite_de_produits est un tableau (Array signifie tableau en anglais).Je pense que ce que tu veux mettre, est le code suivant : {$unite_de_produits[$smarty.const._USER_ID_LANG_]} Ca marche ? 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