'JSON unexpected token due to filename

I have PHP code that takes a list of filename or empty strings and puts them in an array. This array is converted into JSON and stored in a database, this works fine. However, the array is also stored in an object. The issue is when I decode the JSON string of the object. I am running into an error when I try to parse this JSON string in JavaScript: (I don't want to show the rest of the JSON due to privacy)

{"dateCreated":"2022-02-02","dateTimeCreated":"2022-02-02T20:47","title":"lovesick","images":["","","D:\xampp\htdocs\...

Error:

VM8206:1 Uncaught SyntaxError: Unexpected token x in JSON at position 107 at JSON.parse () at new_log.php:33:50

The error is clearly due to the \ being an escape character in JSON but I have tried entering the string into the array with an escape to escape the escape: 'D:\\xampp\\htdocs\...' and this still gives me the same error - I have even tried \\ and \\ but they just give a slightly different error.

If I put the array into the object as a JSON string then I get the error:

VM8178:1 Uncaught SyntaxError: Unexpected string in JSON at position 96 at JSON.parse () at new_log.php:33:50

despite it being the exact same JSON string as shown above?!

Does anyone know how I can fix this issue? Is there some other way I should be storing filenames in JSON?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source