Я stringifieng объект в javascript, и отправляю его с помощью метода Jquery post:
reservation={};
count=0;
$(".reservation").each(function() {
reservation[this.id]=jQuery(this).val();
count++;
if (count==jQuery(".reservation").length)
{
reservationString=JSON.stringify(reservation);
$.post("helper.php", {reservation: reservationString}) .done(function(data) {
Файл «helper.php» получает данные, но все квотианские метки экранируются, поэтому, когда я пытаюсь их декодировать, я получаю ошибку json с кодом ошибки 4.
Вот файл helper.php:
$reservation=$_REQUEST['reservation'];
echo $reservation . "\n";
$reservation=json_decode(html_entity_decode($reservation));
Я попытался выдать предупреждение зарезервированной строкой в javascript, строка там не экранирована, поэтому, скорее всего, метод jQuery post экранирует строку для меня. В чем может быть проблема, вы, ребята, можете предложить решение?
Дополнительная информация:
Это то, что я получаю после предупреждения о строковом объекте в javascript:
{"test":"bubub","Domain":"online","Type":"banner","s2id_CompanyId":"","CompanyId":"-","ContactPersonId":"0"}
Вот что я получаю после вывода данных в php:
{\"test\":\"bubub\",\"Domain\":\"online\",\"Type\":\"banner\",\"s2id_CompanyId\":\"\",\"CompanyId\":\"-\",\"ContactPersonId\":\"0\"}
Это должно работать:
$reservation=$_REQUEST['reservation'];
echo $reservation . "\n";
$reservation=stripslashes(json_decode(html_entity_decode($reservation));
Других решений пока нет …