Этот сайт не наркоманов. Это сайт программистов.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха переехала на новый сервер, ура!

Краснодарское время: 24 Май, 2012, 03:26:13

Страниц: [1]
Печать
Автор Тема: Сабмит формы  (Прочитано 713 раз)
0 Пользователей и 2 Гостей смотрят эту тему.
Malin-ka    ↓ 
10 Декабрь, 2009, 02:47:52
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 83
Сила слова: 1.2

Здравствуйте !
Помогите пожалуйста в одном моменте. Как-то я его проморгала...
 
Есть форма с полями и капчей.
Поля проверяются с помощью jquery.validationEngine.js. Всё работало.
Сделала аяксом проверку капчи, и тут какая-то фигня началась...
Капча работает, проверяется. Но если набрать правильно только её, то форма сабмитится с пустыми полями, которые с проверкой. А должна останавливаться. Если без капчи - всё работает.
Вот текст проверки капчи, может я там намутила :
 
Javascript
function getXmlHttpRequestObject() {
 if (window.XMLHttpRequest) {
    return new XMLHttpRequest();
 } else if (window.ActiveXObject) {
    return new ActiveXObject("Microsoft.XMLHTTP");
 } else {
    alert("Your browser doesn't support the XmlHttpRequest object.");
 }
}
 
var receiveReq = getXmlHttpRequestObject();
var form = document.getElementById('frm');
//var response = document.getElementById('response');
 
//Initiate the AJAX request
function makeRequest(url, param) {
//If our readystate is either not started or finished, initiate a new request
 if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {
   //Set up the connection to captcha_test.html. True sets the request to asyncronous(default)
   receiveReq.open("POST", url, true);
   //Set the function that will be called when the XmlHttpRequest objects state changes
   receiveReq.onreadystatechange = updatePage;
 
   receiveReq.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
   receiveReq.setRequestHeader("Content-length", param.length);
   receiveReq.setRequestHeader("Connection", "close");
 
   //Make the request
   receiveReq.send(param);
 }   
}
 
//Called every time our XmlHttpRequest objects state changes
function updatePage() {
 //Check if our response is ready
 if (receiveReq.readyState == 4) {
     if (receiveReq.responseText==="no") {
   //Set the content of the DIV element with the response text
   //document.getElementById('response').innerHTML = receiveReq.responseText;
   $("#respose").addClass('messageboxerror').text('Введенные символы должны совпадать с символами на картинке !');
   //Get a reference to CAPTCHA image
   img = document.getElementById('img');
   //Change the image
   img.src = '/img.php?' + Math.random(); return false;} else {form.submit();}
 }
}
 
//Called every time when form is perfomed
function getParam(theForm) {
 //Set the URL
 var url = '/captch.php';
 //Set up the parameters of our AJAX call
 var postStr = theForm.tx.name + "=" + encodeURIComponent( theForm.tx.value );
 //Call the function that initiate the AJAX request
 makeRequest(url, postStr);
}

В форме пишу
PHP
onSubmit="getParam(this)"
Вот и вся проверка. Но почему вместе не работает ? Подскажите пожалуйста...
Записан
Baboot    ↓ 
10 Декабрь, 2009, 10:01:41 , спустя 7 часов 13 минут 49 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 10
Сообщений: 441
Сила слова: 2.27

Мне кажется что у тебя jQuery'вская проверка выпадает из за того что ты ее переопределяешь getParam(this). Поэтому срабатывает одна
Записан

2b||!2b
Malin-ka    ↓ 
11 Декабрь, 2009, 01:41:01 , спустя 15 часов 39 минут 20 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 83
Сила слова: 1.2

Крутила-вертела, может и в этом загвоздка, но у меня ничего не выходит... :(
Прикрутила уже стандартный jquery.validate, но в последний момент жаба задушила. Не хочу менять 6 кб на 40.
 
Всё равно я его победю !
Записан
phpdude    ↓ 
11 Декабрь, 2009, 01:51:49 , спустя 10 минут 48 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 344
Сообщений: д-о-х-у-я!
Сила слова: 1.66

ну победюки его!)
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
adw0rd    ↓ 
11 Декабрь, 2009, 10:34:13 , спустя 8 часов 42 минуты 24 секунды
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17615
Сила слова: 1.67

Malin-ka, умница, так держать! А дебагер у тебя есть?
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
Malin-ka    ↓ 
11 Декабрь, 2009, 05:52:00 , спустя 7 часов 17 минут 47 секунд
НЕ ХУЕТА! ХУЕТА!


Карма: 1
Сообщений: 83
Сила слова: 1.2

Есть firebug, но видимо я не очень в нем разумею. Кто бы научил ? :)
В этих штуках в обоих есть сабмит формы. То есть или одно, или другое. Тоесть нужно всё повесить на что-то одно.
Пыталась в скрипт валидации вкрутить проверку капчи.
 
Блин, может у кого есть готовое красивое решение ? :) А то мозх плавится уже...
Записан
phpdude    ↓ 
11 Декабрь, 2009, 05:59:05 , спустя 7 минут 5 секунд
НЕ ХУЕТА! ХУЕТА!

я - ЭМО
Группа: в ухо

Карма: 344
Сообщений: 20784
Сила слова: 1.66

могу лед подарить! чтобы на моск положить, моск нельзя потерять
Записан

забанен. могу забанить других, пишите в личку
BEER. Helping ugly people have sex since 1862.
adw0rd    ↓ 
11 Декабрь, 2009, 06:07:03 , спустя 7 минут 58 секунд
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17615
Сила слова: 1.67

http://habrahabr.ru/blogs/webdev/50445/
http://habrahabr.ru/blogs/webdev/50619/
http://habrahabr.ru/blogs/webdev/50930/
http://habrahabr.ru/blogs/webdev/51113/
Спустя 55 секунд добавил
важнее всего для тебя сейчас 3-я ссылка
Спустя 13 секунд добавил
я в свое время изучал фарбаг методом тыка
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
md5    ↓ 
11 Декабрь, 2009, 06:07:08 , спустя 5 секунд
НЕ ХУЕТА! ХУЕТА!

выезд, апартаменты, массаж, стриптиз, подружки, дорого
Группа: в ухо

Карма: не нужна
Сообщений: 10494
Сила слова: 1.19

влажнее :)
Записан

8: Undefined variable: str
Файл: /home/pyha/pyha.ru/forum/bbcode/Xbb/Tags/Man.php
Строка: 18
adw0rd: мудень блять, я уже фиксить стал эту фигню :)
md5: вуахахахаха
adw0rd    ↓ 
11 Декабрь, 2009, 06:08:14 , спустя 1 минуту 6 секунд
НЕ ХУЕТА! ХУЕТА!

эдво
Группа: в ухо

Карма: не нужна
Сообщений: 17615
Сила слова: 1.67

еще есть вариант почитать оф. документацию
Спустя 42 секунды добавил
Как подметил md5 все через влажнение и тыком :)
Записан

Python, Django, Git, Emacs, Nginx, MySQL, SphinxSearch, FreeBSD/Linux
Мой блог * Кинсбург * Либург * Я на GitHub
Страниц: [1]
Печать
 

Перейти в: