Bonjour,
Je travaille avec Chrome.
J'ai un cookie codé en JSON par un script PHP.
Le cookie est sous la forme:La console me renvoie
Code : Sélectionner tout - Visualiser dans une fenêtre à part %7B%222%22%3A%7B%22font%22%3A%5B%22Arial%22%2C%22Arial%22%2C%22Arial%22%5D%2C%22size%22%3A%5B%2212%22%2C%2212%22%2C%2212%22%5D%2C%22color%22%3A%5B%220%2C0%2C0%22%2C%220%2C0%2C0%22%2C%220%2C0%2C0%22%5D%2C%22insField%22%3A%5B%5B%22SNC%22%5D%2C%7B%221%22%3A%22dat_individus.sexe%22%2C%222%22%3A%22dat_individus.prenom%22%2C%223%22%3A%22dat_individus.nom%22%7D%2C%7B%224%22%3A%22dat_individus.statut%22%7D%5D%2C%22insSep%22%3A%7B%221%22%3A%7B%222%22%3A%22+%22%2C%223%22%3A%22+%22%7D%7D%2C%22save%22%3A%22JS2%22%7D%2C%223%22%3A%7B%22font%22%3A%5B%22Arial%22%2C%22Arial%22%5D%2C%22size%22%3A%5B%2212%22%2C%2212%22%5D%2C%22color%22%3A%5B%220%2C0%2C0%22%2C%220%2C0%2C0%22%5D%2C%22insField%22%3A%5B%5B%22SNC%22%5D%2C%7B%221%22%3A%22essai%22%2C%222%22%3A%22ffff%22%2C%223%22%3A%22sup%5Cu00e9rieur%22%7D%5D%2C%22insSep%22%3A%7B%221%22%3A%7B%222%22%3A%22%5Cu00a0-%5Cu00a0%22%2C%223%22%3A%22+%22%7D%7D%2C%22save%22%3A%22ghj%22%7D%7DJe vois bien que mon cookie commence par un % mais comment remédier au problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Uncaught SyntaxError: Unexpected token % in JSON at position 0 at JSON.parse (<anonymous>) at HTMLSelectElement.<anonymous>
Si cela peut aider voici le code PHP qui enregistre le cookie:Pour info la lecture du cookie sous php fonctionne parfaitement.
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 // Sauvegarde de la configuration $save = trim($_POST['save']); if (!empty($save)) { $cookies = []; if (isset($_COOKIE['save'])) { // Si le nom de sauvegarde existe déjà on détruit l'ancienne sauvegarde $cookies = json_decode($_COOKIE['save'], true); foreach ($cookies as $key=>$cookie) { if ($cookie['save'] === $save) unset($cookies[$key]); } } $cookies[] = $_POST; setcookie('save', json_encode($cookies), time() + 3600*24*3650); }
Partager