Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: как привязать функцию к кнопке, если к ней уже привязана другая функция

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
NeuroZ
Отправлено: 03 Июля, 2012 - 17:49:09
Post Id



Посетитель


Покинул форум
Сообщений всего: 393
Дата рег-ции: Апр. 2012  


Помог: 2 раз(а)




Суть в том, что есть 2 списка полей на одной странице.
Первый список - регистрация пользователя, который обрабатывается стандартной виртуамартовской функцией (там в файле сразу в перемешку и пхп и яваскрипт)
submitregistrtion

второй список - поля которые должны отправится на указанную почту.
checkForm

на кнопку завязан: onclick="return (submitregistration ());"
В таком раскладе работает только первый список

если сделать так: onclick="checkForm();"
То будет работать только второй список.

Как объединить их?
Вся чекФорм функция написано на javascript

сабмитрегистрашион в перемешку и там в ней тяжело разобраться...
Код обязательно выкладывать? Или есть универсальное решение?
 
 Top
LIME
Отправлено: 03 Июля, 2012 - 17:55:04
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




CODE (html):
скопировать код в буфер обмена
  1. onclick="checkForm();return (submitregistration ());"
прикольно я придумал?)))
 
 Top
NeuroZ
Отправлено: 03 Июля, 2012 - 18:22:39
Post Id



Посетитель


Покинул форум
Сообщений всего: 393
Дата рег-ции: Апр. 2012  


Помог: 2 раз(а)




LIME пишет:
CODE (html):
скопировать код в буфер обмена
  1. onclick="checkForm();return (submitregistration ());"
прикольно я придумал?)))

Да, спасибо, частично помогло. Теперь в другом проблема.
ЧекФорм имеет такой инпут
CODE (htmlphp):
скопировать код в буфер обмена
  1. <input type="hidden" name="option" value="com_contact" />

СабмитРегистрация такой:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <input type="hidden" name="option" value="com_virtuemart" />

Соответственно оба они существовать не могут.
Соответственно если какой-то убрать, то по онклику будет работать только один.
Как быть?
(Добавление)
+ если выполняется хотя бы одно из условий (либо первая форма заполнена, либо вторая) - все равно данные отсылаются, т.к. хотя бы одно условие проходит валидацию.. Как сделать чтобы они оба обязаны были пройти ее?
 
 Top
LIME
Отправлено: 03 Июля, 2012 - 18:30:46
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




да заверни все в одну форму с обоими хиденами
(Добавление)
и получи гимор и ф-циями по клику))
 
 Top
NeuroZ
Отправлено: 03 Июля, 2012 - 18:50:31
Post Id



Посетитель


Покинул форум
Сообщений всего: 393
Дата рег-ции: Апр. 2012  


Помог: 2 раз(а)




LIME пишет:
да заверни все в одну форму с обоими хиденами
(Добавление)
и получи гимор и ф-циями по клику))

1. Завернул. Происходит редирект вообще не туда. (при ошибке в одной из форм) (при правильно заполненных формах происходит редирект не по форме, а по какому-то обработчику в СабмитРегистратор, и соответственно там не передается очередной hidden (а мб вовсе редирект происходит) который бы запускал отправку второй формы на почту.
2. А по-русски? (Как объеденить обе проверки функции или где?)

(Отредактировано автором: 03 Июля, 2012 - 18:53:42)

 
 Top
LIME
Отправлено: 03 Июля, 2012 - 18:52:28
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




перенеси все поля из одной формы в другую
и проверку делай только одной ф-цией
подредактируй ее(которую тебе проще будет)
вторую выброси просто
 
 Top
NeuroZ
Отправлено: 03 Июля, 2012 - 18:56:13
Post Id



Посетитель


Покинул форум
Сообщений всего: 393
Дата рег-ции: Апр. 2012  


Помог: 2 раз(а)




LIME пишет:
перенеси все поля из одной формы в другую
и проверку делай только одной ф-цией
подредактируй ее(которую тебе проще будет)
вторую выброси просто

Так вообще не вариант... Там полностью переписывать тогда надо будет... Потому что во второй функции не просто список полей, он берется из бд, + циклы по которым он берется вообще замудренно сделаны, причем там куча всякого непонятного кода (который просто день убить чтобы разобрать) - классика виртуамарта...
Вот и кажется что истина вот вот где-то рядом...
(Добавление)
Выход который я вижу (в теории):
убрать <input type="hidden" name="option" value="com_virtuemart" />
таким образом у нас письма будут отсылаться.. и как-то написать исключения в первую функцию для полей второй функции...
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB