Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.06.2010, 17:26
Интересующийся
Отправить личное сообщение для zhuzha Посмотреть профиль Найти все сообщения от zhuzha
 
Регистрация: 04.05.2010
Сообщений: 12

php + javascript, проверка капчи
Сразу скажу, что и в php, и javascript я дилетант. Но задачу это не отменяет, так что прошу камнями не бросаться))))

Нужно сделать проверку правильности заполнения c помощью javascript поля капчи. Т.к. если делать проверку только в php, после нее сбрасываются поля-селекты. А их в форме много...
$keystring - переменная из поля капчи
//Переопределяем переменную
$keystring = $_REQUEST['keystring'];
//Сравниваем
if ($keystring != $_SESSION['captcha_keystring'] OR empty($keystring)) {
    //Составляем уведомление
    echo '<p id="star">Ошибка:&nbsp;'.$error['captcha'].'</p>';
    unset($_SESSION['captcha_keystring']);
}
else {
     //Разрушаем сессию
     session_destroy();


Проверку я делаю как:
if (obj_pole_keystring.value!="<?= $_SESSION['captcha_keystring']?>")
{
    alert ("Введите верный код подтверждения!");
    document.getElementById('image').src='kcaptcha/img.php?rand='+Math.round(1000 * Math.random());
    obj_form.keystring.focus();
    return false;
}


хелп ми, плиз)
Ответить с цитированием
  #2 (permalink)  
Старый 01.06.2010, 17:37
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Если выводить текст каптчи на странице (даже в преобразованном виде), то ее кпд сразу же уходит в минус.
Ответить с цитированием
  #3 (permalink)  
Старый 01.06.2010, 17:43
Интересующийся
Отправить личное сообщение для zhuzha Посмотреть профиль Найти все сообщения от zhuzha
 
Регистрация: 04.05.2010
Сообщений: 12

т.е. никак?
Ответить с цитированием
  #4 (permalink)  
Старый 01.06.2010, 18:06
Аватар для Gvozd
Матрос
Отправить личное сообщение для Gvozd Посмотреть профиль Найти все сообщения от Gvozd
 
Регистрация: 04.04.2008
Сообщений: 6,246

AJAX вам поможет
а дальше уже по классической схеме.
главное не забыть сохранить введеное пользователем значение капч в скрытое поле, и еще раз проверить уже при пересылке формы
Ответить с цитированием
  #5 (permalink)  
Старый 01.06.2010, 18:35
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от zhuzha
Т.к. если делать проверку только в php, после нее сбрасываются поля-селекты.
А вы их не сбрасывайте.
Ответить с цитированием
  #6 (permalink)  
Старый 02.06.2010, 12:10
Интересующийся
Отправить личное сообщение для zhuzha Посмотреть профиль Найти все сообщения от zhuzha
 
Регистрация: 04.05.2010
Сообщений: 12

Сообщение от Kolyaj Посмотреть сообщение
А вы их не сбрасывайте.
А как их сохранить?
Ответить с цитированием
  #7 (permalink)  
Старый 02.06.2010, 12:12
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Ну так пришли к вам значения из формы, если какое-то поле неправильное, вы показываете ту же форму, но уже с предустановленными значениями, которые к вам только что прилетели.
Ответить с цитированием
  #8 (permalink)  
Старый 02.06.2010, 12:18
Интересующийся
Отправить личное сообщение для zhuzha Посмотреть профиль Найти все сообщения от zhuzha
 
Регистрация: 04.05.2010
Сообщений: 12

Если это текстовое поле, то вопросов нет.
<input name="name" type="text" id="registr" value="<?= $_POST["name"]?>"/>

Вопрос в том, как запомнить то, что в выбрали в выпадающем списке?
<select name="hero"  id="registr">
   <option value="a0" style="color:#999999; ">Выбрать</option>
   <option value="a1">Конечный пользователь</option>
   <option value="a2">Разработчик</option>
   <option value="a3">Интегратор</option>
   <option value="a4" style="color:#999999; ">Другое...</option>
</select>
Ответить с цитированием
  #9 (permalink)  
Старый 02.06.2010, 12:56
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

У нужного option выставляется атрибут selected.
Ответить с цитированием
  #10 (permalink)  
Старый 02.06.2010, 13:12
Интересующийся
Отправить личное сообщение для zhuzha Посмотреть профиль Найти все сообщения от zhuzha
 
Регистрация: 04.05.2010
Сообщений: 12

гениальный ответ..
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Решение проблемы кодировок для AJAX и PHP без iconv (cp1251 в AJAX) Serge Ageyev AJAX и COMET 10 24.04.2013 20:48
Вызов javascript из php без клика Darktj Firefox/Mozilla 11 01.07.2011 18:02
Как передать картинку из javascript в php KIVagant AJAX и COMET 3 12.05.2010 11:54
javascript и php (Вопрос) Гауляйтер Общие вопросы Javascript 3 06.05.2009 09:23
JAVASCRIPT в цикле PHP Nobls Общие вопросы Javascript 3 04.12.2008 17:51