Главная » Файлы » Статьи для вебмастера » Статьи для вебмастера |
Учимся получать значение SOS после очередных обновлений uCoz
24.06.14, 19:44:32 | |
На днях, именно в тот момент, когда начал восстанавливать шаблон, столкнулся с такой проблемой: после подгрузки формы добавления комментариев и последующей попытки отправить эту форму на сервер, выходила ошибка "Капча не та" Разобрав исходник, я убедился, что в форму комментариев была добавлена переменна SOS, видимо, для того, чтобы исключить автоматический спам в комментариях. Немного погуглив, я быстренько нашёл решение проблемы Лично я просто добавляю инпут с моим SOS в форму добавления комментариев следующим образом: Код function getSession(data) { for (var i = 0, code = data.match(/_dS\('(.+)'\)/i)[1], _i = code.length - 1, session = ''; i < _i; i++) { session += String.fromCharCode(code.charCodeAt(i) - code.substr(_i, 1)) }; return session.match(/\d+/g) } $.get(url, function(apo) { $('form#commentform').prepend('<input type="hidden" name="sos" value="' + getSession(apo) + '">'); // Функция getSession() позволяет нам получить текущее значение сессии, если вставить в неё переменную результата гет запроса }); Как можно увидеть, функция getSession() решает нашу проблему. Как-то сразу получить этот инпут sos вместе с формой комментариев ни одним из известных мне ajax способов не удалось, так что getSession() рулит Всем спасибо за внимание. Надеюсь, статья помогла многим нуждающимся. Если у вас есть вопросы - задавайте их в комментариях Материал подготовлен Apocalypse ApoTeam © 2014 | |
Просмотров: 1217 | Загрузок: 0 | Комментарии: 6 | |