Jump to content
dandrimontp

Developper Un Module - Debutant

Recommended Posts

Bonjour,

 

Je suis débutant en la matière et pour vous dire, je suis un peu perdu entre les pages TPL, PHP, les controllers,....

 

J'aimerai simplement créer une nouvelle page sous prestashop qui afficherait au centre de l'écran (après avoir cliqué sur le lien dans le menu du haut de prestashop le retour de ma requete SQL...mais je n'y arrive pas...

 

Voila mon fichier PHP (test.php):

<?php
global $smarty;
/* on affiche la tete du site */
include('../../config/config.inc.php');
include('../../header.php');
 
/* on récupère la marque sélectionnée dans la liste */
 $marque_selectionnee = Tools::getValue("zmarque"); 
 
/* pas de marque selectionnee */
if (empty($marque_selectionnee))
$sql = "SELECT distinct(Marque) FROM Z_spare";
$zmarque = Db::getInstance()->ExecuteS($sql);
$smarty->assign('zmarque',$zmarque);
}
$smarty->display(dirname(__FILE__).'/test.tpl');
/* on affiche le pied du site */
include( '../../footer.php' );
 
 ?>
 
Et voila le fichier TPL (test.tpl):
</BR></BR></BR></BR></BR>
<form name='zform' action='' method='post'>
<SELECT NAME='zmarque' ONCHANGE='this.form.submit()'>
<option selected disabled>Choisir une marque</option>
{foreach from=$zmarque item=marque_select}
<option value=$zmarque[Marque]>$zmarque[Marque]</option>
{/foreach}
</SELECT>
</form>

 

Je mets les deux fichiers dans un répertoire dans Module. Dans le back-office prestashop m'indique 

(classe manquante dans /modules/test/test.php)

 

De plus, lorsque je veux accéder à ma page via http://127.0.0.1/demo2/test.php, j'ai un message d'erreur 404 (page non trouvée)...

 

Je suis un peu perdu...

vous pourriez m'aider ?

Share this post


Link to post
Share on other sites

Salut,

 

J'ai suivi la procédure de création d'un module de prestashop de 10h à 2h30 du matin. Même en respectant scrupuleusement ce qui était indiqué, je n'ai pas réussi à faire fonctionner le module en exemple...bizzare...

 

Sinon, j'arrive depuis mon fichier TPL à récupérer des données et les envoyer à mon fichier PHP via smarty...c'est bien mais ce n'est pas suffisant pour moi.

En effet, ce que je veux faire c'est afficher des données récupérées d'un table de données personnelle dans une liste et lorsque l'on sélectionne un élément de la liste, relancer une requête avec comme filtre la premiere donnée sélectionnée et afficher de nouveau une seconde liste avec le résultat obtenu...mais la je ne sais pas comment faire avec un fichier TPL et un fichier PHP...

J'ai réussi à le faire mais seulement avec mon fichier PHP...et je ne pense pas que cela soit propre...qu'en penses-tu ?

 

Merci de ton retour sur le sujet si tu peux m'aider à avancer...

Share this post


Link to post
Share on other sites

Il faut que le fichier smarty affiche une liste qui lance une requête ajax quand elle change. Et le fichier php appelé par ajax affiche le résultat.

Share this post


Link to post
Share on other sites

Merci pour l'info coeos.pro,

 

Mais je ne sais pas du tout par quoi commencer...aurais-tu un lien d'un tuto pour comprendre le processus pour une petit exemple simple à me fournir afin que je comprenne ?

 

Par avance Merci.

Share this post


Link to post
Share on other sites

je ne connais pas ton niveau, je ne peut pas dire par quoi commencer, pour les exemples il faut regarder le code des modules prestashop et des modules gratuits, j'en ai plusieurs sur ma boutique, il y a d'autres sur d'autres boutiques, ça te donnera déjà une idée.

Share this post


Link to post
Share on other sites

Bonsoir COEOS.PRO,

Bn mon niveau doit être pas loin de 0 (cela fait 15jours que je suis sur Prestashop)...donc on va dire null...mais j'apprends vite car je trouve Prestashop génial et j'ai l'intention de m'en servir pour le site de ma future entreprise...

Share this post


Link to post
Share on other sites

Dans ce cas, voici quelques modules qui devraient t'aider à créer un module :

 

http://www.coeos.pro/fr/modules-prestashop/41-table-viewer.html : permet de voir le contenu des tables SQL

http://www.coeos.pro/fr/modules-prestashop/43-debug.html affiche une popup avec les variables smarty, ça permet de vérifier si les données sont biens envoyées aux fichiers tpl

http://www.coeos.pro/fr/modules-prestashop/116-quel-est-ce-module-quel-est-ce-hook.html affiche les différents fichiers utilisés pour les modules (tpl, css, js, php et aussi les hooks sur lesquels ils sont greffés)

http://www.coeos.pro/fr/modules-prestashop/118-big-data-les-donnees-sql-en-csv-avec-facilite.html permet de tester et sauvegarder des requetes SQL, il utilise pas mal d'ajax, tu peux regarder le code

Share this post


Link to post
Share on other sites

Merci, je vais regarder cela avec attention...

 

Question complémentaire :

J'ai intégrer mon module (tout simple pour le moment dans prestashop) et j'ai fait un point de menu qui affiche ce module. Cela fonctionne mais je m'aperçois que le fil d'ariane ne m'affiche pas la page sur laquelle je suis (il est toujours affiché "Accueil") ...

J'ai regardé dans le fichier breadcrumb.tpl car je pense que c'est celui-ci qu'il me faut modifier mais je ne trouve pas la solution pour que ma page s'affiche dans le fil d'ariane juste après "Accueil"....tu aurais une idée ?

 

Merci.

Share this post


Link to post
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...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More