laura266 Posted July 26, 2012 Share Posted July 26, 2012 (edited) Bonjour à tous, J'ai créé un module, que je greffe au hook actionCustomerAccountAdd. Lorsque j'ajoute un nouveau client, tout fonctionne, mais si dans l'administration je met : Type de processus d'enregistrement à Standard (avec adresse), ça créé bien le client, et l'adresse, mais ça affiche une page blanche, sans erreur, visiblement lorsque ça passe dans mon module, et cela, même si mon module est "vide" : public function hookActionCustomerAccountAdd( $params ){ } Est-ce une erreur de ma part? Merci de votre réponse. Edited July 26, 2012 by laura266 (see edit history) Link to comment Share on other sites More sharing options...
prestasafe Posted July 26, 2012 Share Posted July 26, 2012 as tu activé le mode de débug dans ton config.inc.php ? Link to comment Share on other sites More sharing options...
laura266 Posted July 26, 2012 Author Share Posted July 26, 2012 oui j'ai modifié les lignes suivantes ainsi : @ini_set('display_errors', 'on'); define('_PS_DEBUG_SQL_', true); Link to comment Share on other sites More sharing options...
J. Danse Posted July 26, 2012 Share Posted July 26, 2012 Bonjour, Peux-tu voir si dans le fichier config/defines.inc.php le define _PS_MODE_DEV_ est mis à true ? Link to comment Share on other sites More sharing options...
laura266 Posted July 26, 2012 Author Share Posted July 26, 2012 Bonjour J. Danse, En effet, le _PS_MODE_DEV_ était à false, je l'ai donc modifié. Je ne connaissais pas cette ligne, désolé... Je peux donc en effet voir l'exception soulevée : You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')) GROUP BY hm.id_hook, hm.id_module ORDER BY hm.`position`' at line 6 SELECT SQL_NO_CACHE h.`name` as hook, m.`id_module`, h.`id_hook`, m.`name` as module, h.`live_edit` FROM `ps_module` m INNER JOIN `ps_hook_module` hm ON hm.`id_module` = m.`id_module` INNER JOIN `ps_hook` h ON hm.`id_hook` = h.`id_hook` LEFT JOIN `ps_module_group` mg ON mg.`id_module` = m.`id_module` WHERE ((SELECT COUNT(*) FROM ps_module_shop ms WHERE ms.id_module = m.id_module AND ms.id_shop IN(1)) = 1) AND (hm.id_shop IN(1)) AND (mg.`id_group` IN()) GROUP BY hm.id_hook, hm.id_module ORDER BY hm.`position` Link to comment Share on other sites More sharing options...
J. Danse Posted July 26, 2012 Share Posted July 26, 2012 Re, Pas de soucis, c'est un define qui permet justement de faire un petit retour d'erreur bien pratique Concernant l'erreur, et après lecture, je vois qu'il ne possède aucun groupes dans lequel rechercher (ce qui provoque l'erreur de syntaxe SQL). Est-ce que je peux te demander, lorsque tu encodes ton nouveau client si celui-ci se trouve en DB (table users) et si dans la table customer_group tu peux voir une occurence de l'id du nouveau client avec un numéro de groupe (par exemple 3) ? Link to comment Share on other sites More sharing options...
laura266 Posted July 26, 2012 Author Share Posted July 26, 2012 Re, et merci de tes réponses avisées Le client est bien inséré dans la table customer, et également dans la table customer_group, avec le group 3. Link to comment Share on other sites More sharing options...
J. Danse Posted July 26, 2012 Share Posted July 26, 2012 Pas de soucis. Je travaille avec la 1.5 et lorsque j'entrevois un problème, j'aime voir ce qu'il en est (je préfère le debug au développement, quasiment ! ) J'avoue que c'est pas évident, là comme ça. J'ai testé (ayant aussi un module avec ce hook) sur les deux types de formulaire et c'est fonctionnel. Est-ce que je peux te fournir un override éventuel de l'un ou l'autre fichier afin de mettre des "points d'arrêt" sur certains points ? Ainsi, on peut éventuellement essayer de trouver où ça coince... Link to comment Share on other sites More sharing options...
laura266 Posted July 26, 2012 Author Share Posted July 26, 2012 oui bien sûr pas de problème Link to comment Share on other sites More sharing options...
laura266 Posted July 26, 2012 Author Share Posted July 26, 2012 Autant pour moi, j'ai trouvé l'erreur... Comme je m'en doutais, l'erreur venait de moi... J'avais en effet surcharger la méthode updateGroups de la classe Customer, et il semble que l'erreur provienne de là, car quand je supprime ma surcharge, tout fonctionne. Merci de votre aide Link to comment Share on other sites More sharing options...
J. Danse Posted July 26, 2012 Share Posted July 26, 2012 Parfait ! Ainsi, on peut mettre le sujet en résolu. 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