hgdev7 Posted August 3, 2020 Share Posted August 3, 2020 Bonjour à tous, tout d'abord merci de m'avoir accepté parmi vous. Voilà, je suis en stage de professionnalisation en dev web (nos cours s'appuyaient sur java mais le stage est sur presta donc symfony... donc je découvre twig et tpl pour la vue). Après avoir généré un module et l'avoir ajouté via le module manager, je souhaiterais afficher un menu déroulant dans le fichier .tpl (dans le back-office du module) en appelant le résultat d'une requête sql (table 'ps_lang' champ 'name') faite dans le fichier principal du module en php (fichier appelé "monModule.php"). Dans la vue: configure.tpl <div class="panel"> <h3>Traduction du Francais vers autre langue</h3> <form action="#" method="post" id="langform"> <select id="id_lang" name = "id_lang"> {foreach ($affichage as $row)} <option value="{$row['id_lang'].' " >'.$row['name']} </option> {endforeach} </select> <input type="submit" value="valider"> </form> </div> et dans le fichier monModule.php: public function getLang (){ $sql = 'SELECT id_lang, name FROM ps_attibute_lang WHERE id_lang != 1'; $resultat = Db::getInstance()->executeS($sql); return $resultat; } /** * Load the configuration form */ public function getContent() { /** * If values have been submitted in the form, process. */ if (((bool)Tools::isSubmit('submitMymoduleModule')) == true) { $this->postProcess(); } $this->context->smarty->assign('module_dir', $this->_path); $output = $this->context->smarty->fetch($this->local_path.'views/templates/admin/configure.tpl'); $affichage = $output.$this->getLang(); return $affichage; Pourriez-vous, svp, m'aiguiller vers une (ou des) réponses et/ou vers de la doc (je vous en serai très reconnaissant)? Voici les questions que je me pose (et auxquelles je n'arrive pas à trouver de doc, blog, etc... y répondant clairement relativement à mon niveau débutant): 1. est-ce que la manière dont j'appelle le retour de la fonction getContent (cf. ci-dessus) depuis le foreach du fichier .tpl est correcte? 2. suis-je obligé de passer par la fonction getContent() pour faire passer le résultat de la fonction getLang() à la vue du back-office (fichier configure.tpl)? je n'ai pas trouvé de document expliquant simplement comment exporter le résultat de la requête sql et/ou d'une fonction vers la vue Merci à tous pour vos conseils (désolé si la question a déjà été posée.; j'ai recherché, sur cette page, mais je n'ai pas trouvé de réponse que comprenne...) Link to comment Share on other sites More sharing options...
Andriano Posted August 4, 2020 Share Posted August 4, 2020 Bonjour, Tout d'abord quel prestashop utilise-tu ? Quelles données exactement veux-tu obtenir dans la base de données ? As-tu le nom de la table en question ? 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