JSON Mootools Array проблема - PullRequest
       1

JSON Mootools Array проблема

0 голосов
/ 19 ноября 2010

Я разработал на локальном хосте систему с использованием mootools и Json. Я переместил ее на рабочий сервер, и она не работает. Я разработал действительно простую модель, которая тоже выдает ноль:

    <script type="text/javascript" src="bookingSystem/mootools/mootoolsCore.js">
    </script>
    <script type="text/javascript" src="bookingSystem/mootools/mootoolsMore.js">
    </script>
    <script>
            function json(){
                var weekDays = JSON.encode({
                    apple: 'red',
                    lemon: 'yellow'
                });
                ;
                alert(weekDays);
                var request = new Request.JSON({
                    method: 'post',
                    url: 'jsonTest.php',
                    data: {
                    weeks: weekDays
                    },
                    onComplete: function(jsonObj){
                        alert("back");
                    }
                }).send();
            }

</script>


</head>
<body>
    <span onmousedown="json()">JSONTEST</span>
</body>
</html>

иphp это

<?php
   var_dump(json_decode($_POST['weeks']));
 ?>

Он декодируется как NULL.

Он отлично работал с массивами на localhost, но я не могу заставить массив работать на моем живом сервере.Если я не использую массив, он работает нормально.Любые идеи, где я могу начать искать.

спасибо

1 Ответ

1 голос
/ 19 ноября 2010

Я предполагаю, что на вашем сервере магические кавычки активны, а на вашей машине разработки нет.Если используемая вами переменная POST содержит кавычки json_decode, то она молча терпит неудачу и возвращает NULL.

Магические кавычки экранируют определенные символы (', " и двоичный ноль) во всех POST, GET и COOKIEПеременные автоматически с обратной косой чертой.Простая переменная, закодированная в JSON, может не содержать один из этих символов, поэтому она также работает на сервере, но это может быть не так, если вы кодируете массив.

http://de.php.net/manual/en/security.magicquotes.disabling.php обсуждает, какотключите магические кавычки, даже если у вас нет доступа к файлу конфигурации PHP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...