Chatboum Posted June 13, 2011 Share Posted June 13, 2011 Bonjour à tous,Je développe une fonctionnalité qui nécessite de créer une fonction dans classes/order.php (utilisée par l'admin)Mon problème est que je n’arrive pas à mettre ma fonction au point car je n’arrive pas à la tracer.Les fonctions classiques de PHP ne donnent rien : echo $blabla.. ; mail(‘adresse_mail’,‘objet’,‘contenu’);ou encore écrire dans un fichier.. ( fopen(‘c:\trace.txt’, ‘r+’); fputs($fichiertrace, ‘Texte à écrire’); fclose($fichiertrace)Rien n’y fait (echo fonctionne dans les php, mais pas dans les classes ??)J'ai essayé aussi d'assigner une valeur dans une variable Smarty, mais le panneau d'admin de prestashop ne renvoie pas le popup de debug de Smarty... (Admin n'utilise pas Smarty.. j'ai essayé sans succès de configurer Smarty pour Admin.. si qq'1 sait faire..)Comment tracer dans le code d’une classe comme order.php ? comment ouvrir le popup de debbug smarty dans une classe appelée par l'admin ?Grand merci par avance pour votre aideJP Link to comment Share on other sites More sharing options...
Julien Breux Posted June 14, 2011 Share Posted June 14, 2011 Bonjour,Tout d'abord, si vous souhaitez "faire" quelque chose dans le panneau d'administration, il vous faudra vous pencher du côté des "onglets" soit les fichiers : /admin/tabs/AdminXXXX.phpDans votre cas, il faudra utiliser le fichier /admin/tabs/AdminOrders.phpEnsuite, pour "tracer", vous pouvez toujours utiliser un morceau de code comme celui-ci : <?php ///////////////// A EDITER $data = 'Blabla'; ///////////////// A EDITER file_put_contents(_PS_ROOT_DIR_ . '/logs.txt', "[" . date('Y-m-d H:i:s') . "]\t" . __FILE__ . "\t" . $data, FILE_APPEND); Ce code à pour effet de créer à la racine un fichier "logs.txt" Link to comment Share on other sites More sharing options...
Chatboum Posted June 14, 2011 Author Share Posted June 14, 2011 Bonjour et merci !!Effectivement parfait.. je ne connaissais pas cette commande..Mon but est déclencher un calcul sur des commandes dès qu'elles sont payées.Je vends un abonnement. Au paiement, je récupère la durée de l'abonnement (caractéristique du produit), et je calcul la nouvelle échéance que je mets à jour dans un champ de Ps_customer.Mon critère étant le paiement = l'update de invoice_date et invoice_number dans ps_orders..C'est la fonction setInvoice() dans order.php. Donc j'ai créé une fonction nouvelle updateMonCustomer que j'appelle dans setInvoice...Après on verra pour un tab spécial ou un pavé dans admin/ AdminOrder..Merci encore... je vais pouvoir poursuivre..@+ Link to comment Share on other sites More sharing options...
Julien Breux Posted June 14, 2011 Share Posted June 14, 2011 Vous pouvez utiliser les "hooks" de PrestaShop. Voir mon article sur le blog. 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