Я получаю некоторые данные от mysql и отправляю их для разрыва с помощью json. Но отправка данных в виде массива добавляет обратную косую черту к моим результатам.json_encode добавляет обратную косую черту
PHP:
$result = mysql_query("SELECT location_name, phone_number FROM location WHERE email_id = '[email protected]'");
$result_array = array();
while($row = mysql_fetch_assoc($result))
{
$result_array[] = $row;
}
echo json_encode($result_array);
JS:
$$.ajax({
url: 'http://www.abc.co/SupportData/get_business_locations.php',
type: "POST",
data: {
email: window.localStorage["email"]
},
dataType: "JSON",
success: function (jsonStr) {
console.log(JSON.stringify(jsonStr));
}
});
Выход:
[{\"location_name\":\"Bandra\",\"phone_number\":\"\"},{\"location_name\":\"Dadar\",\"phone_number\":\"\"},{\"location_name\":\"ee\",\"phone_number\":\"\"},{\"location_name\":\"ttttt\",\"phone_number\":\"\"}]""
Используйте 'json_encode ($ result_array, JSON_UNESCAPED_SLASHES);' для удаления обратных косых черт – Saty
Я просто удалил JSON.stringify из JS, и он отлично работал. Все еще не знаете почему? –
JSON.stringify превращает объект в текст JSON и сохраняет этот текст JSON в строке. Optional. Добавляет отступы, пробелы и символы разрыва строки в текст JSON возвращаемого значения, чтобы упростить его чтение. – Saty