Cédricexpo Posted February 24, 2017 Share Posted February 24, 2017 Bonjour à tous, Ce matin une cliente m'appelle car elle n'arrive pas à valider sa commande, pas de problème je traite sa commande par e-mail et lui demande de m'envoyer le code de l'erreur. Je me suis permis de faire le processus de commande mais chez moi tout marche bien, donc je me suis dit que ça venait d'elle, seulement après l'appel d'un nouveau client à l'instant je prends peur ! J'ai essayé de trouver avant de vous importuner en ouvrant un topic mais je n'ai rien trouvé de concluant. Ci-joint une capture d'écran de l'erreur, cela se passe pendant le processus de commande, avant le paiement... A noter que nous avons fait réaliser un module par des devs, pendant le processus les clients doivent cliquer sur quel événement ils veulent être livrés (nous fournissons du mobilier pour événements) Mais cela fait plusieurs années et ça a toujours bien marché... A votre avis, pouvez-vous m'aider ? D'avance merci pour votre aide ! Cédric Link to comment Share on other sites More sharing options...
Eolia Posted February 24, 2017 Share Posted February 24, 2017 Bah, quand on a ce genre d'erreur on fait un dump des données envoyées et on compare avec ce qu'elles devraient être. Là c'est le champ address1 (1ère ligne d'adresse d'une adresse) qui est invalide. Que contient-il ? Link to comment Share on other sites More sharing options...
GT ITECH Posted February 24, 2017 Share Posted February 24, 2017 Effectivement il faudrait voir ce qu'ils mettent dans leurs adresses, il y a sûrement un caractère qui n'est pas apprécié par Prestashop Eolia -> Tout le monde n'est pas développeur, encore faut il savoir faire un dump, même carrément savoir ce que ce mot signifie, quand on utilise un CMS, c'est dans une bonne majorité des cas parce qu'on n'a pas de connaissances en programmation ou très peu ^^ Link to comment Share on other sites More sharing options...
BeComWeb Posted February 25, 2017 Share Posted February 25, 2017 Ca sent le dev mal testé tout ça. La règle de validation dans le modèle Address.php est isAddress. Dans Validate.php (le système de validation des données pour faire simple), la méthode IsAddress() refuse que le champ address1 soit vide ou contienne des caractères interdits (peu importe lesquels). Mais théoriquement les clients ne devraient pas arrivés à l'étape de la création de commande si l'ajout d'adresse n'a pas été validé. Or là c'est le cas donc soit l'adresse est bien validée puis "altérée" à une étape suivante, soit elle n'est pas validée. Une chose est certaine c'est qu'il y a une version surchargée de OrderController.php (override) et que celle-ci est en cause selon moi. Si ça fonctionne depuis plusieurs années il faudrait essayer de trouver la cause. Peut-être que les clients qui la rencontrent habitent tous le même pays,qu'ils ont tous choisis le même transporteur (un système de point-relais par exemple), qu'il y a un caractère particulier dans l'adresse (apostrophe, chevron, dièse,...)... Bref il faut chercher un dénominateur commun. Link to comment Share on other sites More sharing options...
Cédricexpo Posted February 27, 2017 Author Share Posted February 27, 2017 (edited) Bonjour à tous, merci pour vos réponses ! Effectivement, j'ai mis le site en place mais seulement en ce qui concerne le BO (je ne suis qu'infographiste) en ce qui concerne les parties techniques nous avons fait appel à un développeur indépendant, du coup je suis perdu avec le DUMP ! je suis allé voir les adresses des deux clients qui ont ce problème, et il s'avère que le premier n'a pas du tout rentré d'adresse apparement, et le second, basé au Royaume-Uni, a une apostrophe dans le nom de sa société. Les erreurs peuvent-elles donc venir de là ? A votre avis, y aurait-il un moyen à ma mesure de régler ça ? Sinon peut être indiquer quelque part que les gens doivent impérativement entrer une adresse valide sans caractères interdits ? D'avance merci, très bonne journée et bonne semaine à vous. Cédric EDIT : Effectivement, j'ai testé les deux cas de figure, et à chaque fois j'ai eu ce message d'erreur ! Merci vous êtes trop forts ! EDIT2 : Autre point qui créait le bug, en fait nous avons un système de "Code Salon" (module que nous avons fait développer en externe), dans le processus de commande, les clients doivent cocher le salon sur lequel ils veulent être livrés, en faisant les tests j'ai rempli à l'arrache les différents champs et le bug est apparu quand j'ai mis des lettres dans le champs "Numéro de Téléphone", alors qu'en y mettant des chiffres au pif ça a de nouveau marché. Edited February 27, 2017 by Cédricexpo (see edit history) Link to comment Share on other sites More sharing options...
Eolia Posted February 27, 2017 Share Posted February 27, 2017 é... Link to comment Share on other sites More sharing options...
GT ITECH Posted February 27, 2017 Share Posted February 27, 2017 C'est quand même assez bizarre, il me semblait pourtant de souvenir que Prestashop gérait la validation des champs niveau Front Office.... (comme "Veuillez entrer un numéro de téléphone valide" par exemple) Link to comment Share on other sites More sharing options...
Eolia Posted February 27, 2017 Share Posted February 27, 2017 Sauf que là on ne sait toujours pas en quelle version on est^^ Il y a des vérification js (qui dépendent du thème) et php Une apostrophe est valide dans une adresse, par contre la valeur doit être protégée avant d'être enregistrée en base (pSQL())... 1 Link to comment Share on other sites More sharing options...
BeComWeb Posted February 27, 2017 Share Posted February 27, 2017 Une apostrophe est valide dans une adresse, par contre la valeur doit être protégée avant d'être enregistrée en base (pSQL())... Oui Eolia a raison. De base il n'est pas interdit de mettre une apostrophe dans une adresse (sinon y a des milliers de rues, lieu-dits et autres qui feraient planter PS). C'est le dev spécifique qui a fait que ça crée des bugs (si c'est bien la seule et unique cause). Link to comment Share on other sites More sharing options...
GT ITECH Posted February 27, 2017 Share Posted February 27, 2017 Sauf que là on ne sait toujours pas en quelle version on est^^ Il y a des vérification js (qui dépendent du thème) et php Une apostrophe est valide dans une adresse, par contre la valeur doit être protégée avant d'être enregistrée en base (pSQL())... Effectivement je n'avait pas songé au fait qu'un dev pouvait avoir modifié ça (via un thème notamment). Link to comment Share on other sites More sharing options...
Cédricexpo Posted February 27, 2017 Author Share Posted February 27, 2017 Merci pour vos réponses, Je suis en version 1.5.4.1 et j'utilise le thème "Metrofas" (je ne sais pas si ça peut aider)... L'apostrophe est dans le nom de la société, il est clair qu'il doit y avoir quelques milliers d'adresses avec une apostrophe ! Link to comment Share on other sites More sharing options...
BeComWeb Posted March 2, 2017 Share Posted March 2, 2017 Au final le bug est résolu ou non ? Link to comment Share on other sites More sharing options...
Eolia Posted March 2, 2017 Share Posted March 2, 2017 Il a édité son post^^ https://www.prestashop.com/forums/topic/595717-impossibilit%C3%A9-pour-mes-clients-de-finaliser-leur-commande/?do=findComment&comment=2512758 Link to comment Share on other sites More sharing options...
BeComWeb Posted March 2, 2017 Share Posted March 2, 2017 Il a édité son post^^ https://www.prestashop.com/forums/topic/595717-impossibilit%C3%A9-pour-mes-clients-de-finaliser-leur-commande/?do=findComment&comment=2512758 Oui j'ai vu mais ça reste pas clair Déjà parce que chronologiquement c'est flou et en plus ça ne va pas empêcher ses clients de mettre n'importe quoi dans le champ (y compris les classiques "j'ai pas de téléphone" ou "ne m'appelez pas") Link to comment Share on other sites More sharing options...
Eolia Posted March 2, 2017 Share Posted March 2, 2017 Ben vu comme est construit son site, si le client met n'importe quoi dans ces champs il ne pourra pas commander Link to comment Share on other sites More sharing options...
BeComWeb Posted March 2, 2017 Share Posted March 2, 2017 OK, bon bin on peut ranger le topic dans la grande rubrique des "topics résolus qui ne sont pas passés en Résolu" alors 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