nicoco Posted September 23, 2011 Share Posted September 23, 2011 Bonjour, J'ai créé un nouveau champ dans la table product_lang qui me permet d'ajouter le Siret du fabricant (et autres) dans la fiche produit. Je souhaiterai maintenant que ce champ (artisan_info) s'affiche sous le nom du produit dans la facture. En fouillant le forum j'ai trouvé quelques pistes, notamment une qui permet d'ajouter le nom du fabricant de cette manière : $fabricant = Db::getInstance()->ExecuteS(' SELECT id_manufacturer FROM `'._DB_PREFIX_.'product` WHERE `id_product` = '.intval($product['product_id'])); $this->MultiCell($w[0], 5, Tools::iconv('utf-8', self::encoding(), Manufacturer::getNameById($fabricant[0]['id_manufacturer']).' - '.$product['product_name']), 'B'); J'ai donc essayé de l'adapter, mais ma compréhension s'arrête à : sélectionner le champ "artisan_info" de la table "product_lang" : $info = Db::getInstance()->ExecuteS(' SELECT artisan_info FROM `'._DB_PREFIX_.'product_lang` WHERE `artisan_info` Après je sèche : WHERE `id_product` = '.intval($product['product_id'])); ? Et pour l'affichage, d'où sort ceci (où trouve-t-on une liste des actions disponibles) : Manufacturer::getNameById , est-ce que je dois faire quelque-chose du genre Product::getProductById (ca marche pas, à priori...). Enfin, je m'en sors très bien avec le HTML/CSS et je suis de plus en plus frustré de devoir (méchament) bidouiller en PHP, quelqu'un saurait me conseiller un bon tuto en ligne ou en livre pour ensuite pouvoir bidouiller correctement Prestashop? Merci! Link to comment Share on other sites More sharing options...
nicoco Posted September 26, 2011 Author Share Posted September 26, 2011 Bonjour, En avançant un peu, il semblerait qu'il soit plus aisé de récupérer des infos de la table manufacturer, j'ai donc créé un nouveau champ dansla table manufacturer : "man_infos". Le code suivant semble fonctionner sur un presta 1.4.1 : $productObj = new Product($product['product_id'], true, intval($cookie->id_lang)); $manufacturer_name = ''; $manufacturer = new Manufacturer($productObj->id_manufacturer, intval($cookie_id_lang)); if (Validate::isLoadedObject($manufacturer)) $manufacturer_name = $manufacturer->man_infos. ' '; $this->MultiCell($w[++$i], 5, Tools::iconv('utf-8', self::encoding(), $manufacturer_name.$product['product_name']), 'B'); En revanche sur la version 1.4.4 j'ai les erreurs suivantes : Notice: Undefined variable: cookie in (...)\prestashop\classes\PDF.php on line 847 Notice: Trying to get property of non-object in (...)\prestashop\classes\PDF.php on line 847 Notice: Undefined variable: cookie_id_lang in (...)\prestashop\classes\PDF.php on line 849 Notice: Undefined property: Manufacturer::$man_infos in (...)\prestashop\classes\PDF.php on line 851 FPDF error: Some data has already been output, can't send PDF file (Je précise que je fais ces tests sur une boutique de test en local, et qu'il ne m'est pas possible de mettre à jour presta, j'ai modifié trop de fichiers...) Merci 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