На днях сайт переехал на новый хостинг и сразу столкнулся с проблемой - система для голосования 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

 

Добавить комментарий

Перед публикацией ваш комментарий должен пройти проверку Администратором.


Защитный код
Обновить

Вход
Опрос
busyЗагрузка опроса...

rss_to_mail

Напишите Ваш e-mail:


уборка квартиры Заволжск