Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Проблема с обработчиком формы в Опере


Автор: s0lman 10.1.2008, 14:49
Здравствуйте . Столкнулся с проблемой.
Пользователь поочередно переходит по страницам сайта (page1.php, page2.php, page3.php).
Ессесно в обработчике каждой формы указываю <form action="pageN.php">
И, собственно, проблема.
В ИЕ все работаетр отлично
В Опере вместо перехода с page2 на page3 сбрасывает на page1!
А Файрфокс вообще не выполняет перехода даже на вторую страницу!
Где искать ошибки?

Автор: bars80080 10.1.2008, 15:06
а переход случаем, не javascript'ом выполняется?

Автор: MoLeX 10.1.2008, 15:09
s0lman, код в студию. телепатия после НГ еще не востановилась до конца

Автор: s0lman 10.1.2008, 15:25
Первая страница загружается с индекса двумя инклудами
include("title.php");include("auto_new.php");
Объявление формы в первом файле
Код

<form name="form1" id="form1" method="post" action="infopage.php?sid=$PHPSESSID">

объявление в infopage.php
Код

<form name="infoform" id="infoform" method="post" action="questionnaire.php?sid=$PHPSESSID">

questionnaire.php
Код

<form id="form2" name="form2" method="post" action="send_message.php?sid=$PHPSESSID">

bars80080, переход на вторую форму выполняется по ссылке
<a href='javascript: form1.submit()' class='mainbutton'></a>"

Добавлено через 2 минуты и 36 секунд
на третью выполняется (в ИЕ)кнопкой  type="submit"

Автор: MoLeX 10.1.2008, 15:37
Цитата(s0lman @  10.1.2008,  15:25 Найти цитируемый пост)
переход на вторую форму выполняется по ссылке<a href='javascript: form1.submit()' class='mainbutton'></a>"


скорей всего из-за этого и хромает твой скрипт. 
Любезный а зачем тебе понадобилась сыслка с JS-скриптом, кнопки Submit уже не хватает?

Автор: bars80080 10.1.2008, 15:46
если можно избежать использования js в функционале, то надо избегать,
ибо js всё же больше для красоты, а красота суть зло

Автор: MoLeX 10.1.2008, 15:54
Цитата(bars80080 @  10.1.2008,  15:46 Найти цитируемый пост)
а красота суть зло

неа, крастоа она и в африке красота тока черная, просто надо разумно ее использовать и фсе)

Автор: Sunvas 10.1.2008, 16:06
Советую сделать так:
Код

<a href='#' OnClick="javascript: form1.submit(); return false;" class='mainbutton'></a>

Должно работать.

ЗЫ. Если удобно юзать JS - им можно юзать. Проблема заключается в кривизне рук.

Автор: s0lman 10.1.2008, 16:06
Цитата(MoLeX @ 10.1.2008,  15:37)
Любезный а зачем тебе понадобилась сыслка с JS-скриптом, кнопки Submit уже не хватает?

Именно для красоты: вместо кнопки использую рисунок с методом  hover.

Раньше, правда все работало, но тогда я не переходил по action, а в индексе подгружал страницы инклюдом.  

Автор: MoLeX 10.1.2008, 16:12
Цитата(s0lman @  10.1.2008,  16:06 Найти цитируемый пост)
Раньше, правда все работало, но тогда я не переходил по action, а в индексе подгружал страницы инклюдом.  

врядли из-за инклуда, может из-за первого варианта все проблемы возникли? потестируй

Добавлено через 2 минуты и 4 секунды


Цитата(s0lman @  10.1.2008,  16:06 Найти цитируемый пост)
Именно для красоты: вместо кнопки использую рисунок с методом  hover.

эээ, для этих целий фсегда считал что хтмл'а хватит http://www.htmlbook.ru/html/input.html

Автор: Sunvas 10.1.2008, 16:14
s0lman, мой вариант пробовал?

Автор: s0lman 10.1.2008, 16:30
Sunvas, спасибо - файрфокс перешел дальше
Но в опера по-старому возвращает на первую страницу, хотя со второй переход уже именно <input type="submit">

Автор: MoLeX 10.1.2008, 16:33
s0lman кеширование не стоит? а то однажды тут полчаса голову ламал почти над такой же проблемой, кеш очистил - стало все работать)

Автор: Sunvas 10.1.2008, 16:34
хм не должно такого быть..

Автор: MoLeX 10.1.2008, 17:03
Sunvas привел чисто свой пример, или у меня опера глючит)))

Автор: s0lman 10.1.2008, 17:04
 smile Более того: создал кнопку типа сабмит, переслал данные - результат тот же  

Какие еще будут предположения?

Автор: MoLeX 10.1.2008, 17:07
var_dump();

Автор: Sunvas 10.1.2008, 17:19
Цитата(s0lman @  10.1.2008,  17:04 Найти цитируемый пост)
Более того: создал кнопку типа сабмит, переслал данные - результат тот же  

Ну.. Тогда либо у тебя сервер посылает хеадрые перехода на какую-то страницу, либо в action формы чего-то не то написано. Третьего не дано.

Автор: s0lman 10.1.2008, 17:22
Ну я и лопух....    
остался обработчик события onclick - history.back()....
зато теперь знаю, что ИЕ приоритет отдает сабмиту, а опера клику  smile 

Автор: Sunvas 10.1.2008, 17:29
Т.е. все работает?

Автор: s0lman 10.1.2008, 17:32
Да, в опере все нормально, и когда изменил событие на ссылку то и с файрфоксом нет проблем   smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)