На днях сайт переехал на новый хостинг и сразу столкнулся с проблемой - система для голосования PollXT перестала работать.
Копания в коде дали свои результаты. Проблема заключалась в том, что на старом сервере все спецсимволы автоматом экранировались и данные переданные через JSON экранировались, а затем эти символы убирались с помощью следующего кода
Файл: \administrator\components\com_pollxt\admin.pollxt.php
$ajaxQuestions = json_decode(stripslashes(xtCompat::getVar('ajaxQuestions', 0, true )));
$ajaxOptions = json_decode(stripslashes(xtCompat::getVar('ajaxOptions', 0, true )));
Как видим, тут данные "очищались" от автоматического экранирования с помощью функции stripslashes. На новом сервере функция автоматического экранирования отключена, поэтому все что нам нужно сделать, это убрать "очистку" и заменить этот код на
$ajaxQuestions = json_decode(xtCompat::getVar('ajaxQuestions', 0, true ));
$ajaxOptions = json_decode(xtCompat::getVar('ajaxOptions', 0, true ));
Ну вот и все. Теперь наше голосование снова в строю и вы можете проголосовать за (или против) проведения курса по PHP
| < Предыдущая | Следующая > |
|---|
Загрузка опроса...