Nous utilisons des cookies pour améliorer votre expérience de visite de notre site Web. Pour plus d'informations, Cliquez ici.
Mentions légales
×

Vue d'ensemble de la vie privée

Ce site utilise des cookies afin que nous puissions vous fournir la meilleure expérience utilisateur possible. Les informations sur les cookies sont stockées dans votre navigateur et remplissent des fonctions telles que vous reconnaître lorsque vous revenez sur notre site Web et aider notre équipe à comprendre les sections du site que vous trouvez les plus intéressantes et utiles.

Vous pouvez régler tous vos paramètres de cookies en naviguant sur les onglets sur le côté gauche.

Nom du cookieAcceptez
GDPR PRO - Règlement sur la protection des données générales - tout en 1 Ce module aide le site adevenir conforme à la norme RGPD en ajoutant les fonctionnalités conformes à la loi.
unknown

Prestashop : comment corriger Uncaught SyntaxError Unexpected token u in JSON ?

tout servces prestashop

Prestashop : Identifier la requête AJAX en cause

L’erreur Unexpected token 'u' in JSON signifie que Prestashop essaie de lire une réponse AJAX comme du JSON, mais que le contenu reçu n’est pas valide. C’est souvent une réponse vide ou corrompue.

Ouvre l’onglet Réseau du navigateur (F12 > Réseau > XHR) et repère la requête associée à l’action. Clique dessus et regarde la réponse exacte : si elle contient "undefined", cela déclenche l’erreur JavaScript.


Prestashop : Vérifier la réponse du serveur

Prestashop attend un objet JSON bien formé, mais reçoit souvent une chaîne contenant "undefined" ou une erreur PHP. Cela provoque le blocage côté navigateur.

Inspecte la réponse de la requête AJAX dans la console. Si elle contient du HTML (ex : message d’erreur ou page blanche), c’est que le serveur ne renvoie pas un JSON correct. Corrige le script ou module en cause.


Prestashop : Activer le mode debug pour voir les erreurs PHP

Une erreur PHP silencieuse côté serveur peut corrompre la réponse JSON. Prestashop tente alors de la parser, mais échoue sur un mot comme "undefined" ou "unreachable".

Active le mode debug dans defines.inc.php. Recharge la page et reproduis l’action. Si un message d’erreur serveur s’affiche à la place du JSON attendu, tu as localisé la source du problème.


Prestashop : Vérifier les logs d’erreur du serveur

Un module, un override ou un thème peut provoquer une erreur lors d’un appel AJAX, empêchant Prestashop de répondre avec un format JSON valide.

Consulte les logs dans /var/logs/ ou ceux de ton hébergement. Cherche les erreurs liées aux fichiers .php invoqués par la requête. Une fois identifiée, corrige la fonction ou le fichier qui renvoie du contenu non JSON.


Prestashop : Tester avec un thème par défaut

Certains thèmes personnalisés surchargent des scripts JavaScript ou modifient les comportements AJAX. Cela peut entraîner une réponse mal gérée côté client, avec un JSON invalide.

Passe temporairement au thème Classic, puis teste à nouveau l’action déclenchant l’erreur. Si tout fonctionne, adapte ton thème personnalisé pour qu’il respecte le format attendu dans les réponses AJAX JSON.


Prestashop : Corriger un module qui retourne une réponse vide

L’erreur peut provenir d’un module qui renvoie une réponse vide ou incomplète. Prestashop s’attend à un objet JSON, mais reçoit undefined, ce qui bloque le parsing.

Désactive temporairement les modules récemment installés ou mis à jour. Ensuite, réactive-les un à un. Le module fautif devra être corrigé pour retourner une structure JSON complète et cohérente.


Prestashop : Vérifier les scripts JavaScript personnalisés

Un script personnalisé qui traite mal la réponse d’un appel AJAX peut déclencher l’erreur. Par exemple, essayer de parser une chaîne vide ou invalide.

Vérifie les fichiers .js personnalisés du thème ou des modules. Assure-toi qu’ils vérifient la validité de la réponse avant d’appeler JSON.parse(). Cela évite les erreurs de type "Unexpected token".


Prestashop : Vider le cache de Prestashop et du navigateur

Un fichier de cache JavaScript obsolète peut contenir une ancienne logique de traitement AJAX, ce qui déclenche l’erreur Unexpected token.

Vide le cache via Paramètres avancés > Performance, puis recharge la page avec Ctrl + F5. Cela force Prestashop à réutiliser les scripts actualisés et à ignorer les fichiers mal interprétés.


Prestashop : Inspecter les extensions de navigateur

Des extensions comme AdBlock, uBlock ou NoScript peuvent bloquer certaines requêtes AJAX, causant des réponses partielles ou incompréhensibles par le navigateur.

Teste l’action déclenchante en navigation privée ou dans un autre navigateur sans extension. Si l’erreur disparaît, ajoute une exception pour ton domaine ou modifie les paramètres de l’extension concernée.


Prestashop : S’assurer que la sortie est bien encodée en JSON

Dans certains cas, la fonction PHP censée retourner un objet JSON renvoie du texte ou une erreur, provoquant une exception côté client. C’est souvent dû à un echo inutile ou mal placé.

Vérifie dans les fichiers du module ou du contrôleur que la sortie est bien une structure JSON, envoyée proprement, sans autre contenu parasite. Cela garantit que le navigateur peut décoder correctement la réponse.