imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 30.11.2006, 23:45     # 1
aramis
Junior Member
 
Регистрация: 31.10.2002
Сообщения: 150

aramis Путь к славе только начался
Form+Enter и вопрос по голосавалке

1. На странице есть 2 формы. Заполняем одну, нажимаем enter, значение submit-буттона передаётся. Заполняем другую, нажимаем enter, передаётся только значение элементов формы, а значение субмит-буттона - нифига. Кто нибудь сталкивался? Злодей - ИЕ6+7, с Firefox и Opera всё ок.

2.Имеется голосование только для мемберов. Чтобы узнать кто проголосовал, сохраняем в БД пару user+за что голосовал. Есь ли более элегантное решение?


Заранее спасибо
aramis вне форума  
Старый 01.12.2006, 06:11     # 2
Face
Junior Member
 
Аватар для Face
 
Регистрация: 09.08.2005
Адрес: Свердловская область
Сообщения: 112

Face Известность не заставит себя ждать
aramis
1. HTML-код в студию
2. Я также голосовалку делал. Чем тебя этот вариант не устраивает?
Face вне форума  
Старый 01.12.2006, 09:28     # 3
Псих
::VIP::
Guinness Liker
Понаехало тут
 
Аватар для Псих
 
Регистрация: 26.01.2003
Адрес: В нейроне
Пол: Male
Сообщения: 2 848

Псих СуперБогПсих СуперБог
Псих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБогПсих СуперБог
Цитата:
aramis:
Чтобы узнать кто проголосовал, сохраняем в БД пару user+за что голосовал. Есь ли более элегантное решение?
А какое может быть более элегантное решение? Можно id юзера писать, если таковое имеется. Это будет логичнее
__________________
меня не вылечат
Псих вне форума  
Старый 01.12.2006, 15:21     # 4
aramis
Junior Member
 
Регистрация: 31.10.2002
Сообщения: 150

aramis Путь к славе только начался
1. вот "неработаюший" код, правда вокруг ещё пару дивов
Код HTML:
<form name="passwort_request" action="" method="post" style="margin-top:10px;">
<input type="password" name="album_pass" size="30" maxlength="20"/>
<br/>
<input type="submit" name="submit_album_pass" value="bla" style="margin-top:10px;"/>
</form>'
1. вот "неработаюший" код, правда вокруг ещё пару дивов
aramis вне форума  
Старый 01.12.2006, 16:59     # 5
Naked
::VIP::
 
Аватар для Naked
 
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194

Naked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked Сэнсэй
Цитата:
aramis:
субмит-буттона - нифига
сделай-ка print_r ($_REQUEST) и посмотри точно ли не передается.... может с именем ошибаешься, плюс посмотри <form name> - имя у двух форм одинаковое? может в этом ошибочка...но я не уверен..
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным.
Naked вне форума  
Старый 01.12.2006, 17:47     # 6
aramis
Junior Member
 
Регистрация: 31.10.2002
Сообщения: 150

aramis Путь к славе только начался
Цитата:
Сообщение от Naked
сделай-ка print_r ($_REQUEST) и посмотри точно ли не передается.... может с именем ошибаешься, плюс посмотри <form name> - имя у двух форм одинаковое? может в этом ошибочка...но я не уверен..
через Request я только и узнал что значение субмита не передаётся В Request только значение "album_pass" и всё. При нажатии на кнопку всё нормально
aramis вне форума  
Старый 05.12.2006, 15:08     # 7
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Цитата:
aramis:
нажимаем enter, передаётся только значение элементов формы, а значение субмит-буттона - нифига. Кто нибудь сталкивался? Злодей - ИЕ6+7, с Firefox и Opera всё ок.
Цитата:
aramis:
1. вот "неработаюший" код, правда вокруг ещё пару дивов
Не знаю, у меня все работает, в ИЕ 6.0.2900.2180.xpsp_sp2_gdr.050301-1519, также проверял в Опере и ФФ.
Вот пример http://ru.bir.ru/TEST/form_test.php , вот его сурс http://ru.bir.ru/TEST/form_test.txt
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 05.12.2006, 18:12     # 8
Naked
::VIP::
 
Аватар для Naked
 
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194

Naked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked Сэнсэй
Цитата:
Hubbitus:
Вот пример
так вроде две формы, как говорит чел?
Цитата:
aramis:
1. На странице есть 2 формы
приведи плиз весь код страницы - а то в том, что ты написал только одна форма или я чего-то непонял?
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным.
Naked вне форума  
Старый 05.12.2006, 22:30     # 9
Hubbitus
мод
IMHO Кодер-200(6,7,8)
 
Регистрация: 29.03.2003
Адрес: Saint-Petersburg, Russia
Пол: Male
Сообщения: 2 734

Hubbitus Бог с наворотамиHubbitus Бог с наворотами
Hubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотамиHubbitus Бог с наворотами
Цитата:
Naked:
так вроде две формы, как говорит чел?
Ну какой код привели, такой я и протестировал
__________________
Я делаю Линукс! Присоединяйтесь к свободным людям!

Связаться со мной всегда можно по джабберу: Hubbitus@jabber.ru
Pahan-Hubbitus.
Hubbitus вне форума  
Старый 11.12.2006, 21:19     # 10
aramis
Junior Member
 
Регистрация: 31.10.2002
Сообщения: 150

aramis Путь к славе только начался
извиняюсь, что так долго получилось.
вот "урезаный" код. проверил, в ие форма посередине субмит не передаёт.
если будете пробовать, то в action надо будет название файла подставить, иначе ие GET string не показывает
PHP код:
<body id="body" onload="hideLink()">
<
div id="main">
<
div id="head">
<!-- 
LOGIN -->
 <
div id="login" >
 <
form name="login" method="get" action="album2.htm" style="text-align:right; margin-top:0px;">
                 <
span style="margin-right:5px;">Login:</span>
                 <
input type="text" name="user" style="margin-right:10px; width:100px; border:#999999 1px solid;" size="10" maxlength="16"/>
                 <
br/>
                 <
span style="margin-right:5px;">Password:</span>
                 <
input type="password" name="password" style="margin-right:10px; margin-top:1px; width:100px; border:#999999 1px solid;" size="10" maxlength="16"/>
                 <
br/>
                 <
input type="submit" name="submit_login" value="Login" class="button" style="width:103px" onmouseover="button_over(this); " onmouseout="button_out(this);"/>
                 <
br/>
                 <
a href="http://192.168.1.35/fotos/register" style="margin-right:10px; margin-top:1px;">Registrieren</a>
                 </
form
 </
div>

 <!-- 
LOGO -->
 <
div id="logo">
 <
span style="font-size:16px; font-weight:bold; color:#000099;">balalala</span>
 </
div>

<!-- 
MENU -->
  <
div id="menu">
  </
div>
 <!-- 
SUCHE -->
 <
div id="search">

 </
div
 <!-- 
UPLOAD -->
  <
div id="upload">
  
  </
div>
  
 <!-- 
PATH -->
 <
div id="path"></div>
</
div><!-- END OF HEAD -->
<!-- 
BANNER -->
<
div id="banner" onclick="hideAll()">AAAAAA</div>
<!-- 
PREVIEW -->
<
div id="preview"  onclick="hideAll()"></div>
<!-- 
CONTENT -->
<
div id="content" style="text-align:center;"  onclick="hideAll()">
<
br/>
            
Geben sie das Passwort ein:
            <
form name="passwort_request" action="album2.htm" method="get" style="margin-top:10px;">
                <
input type="password" name="album_pass" size="30" maxlength="20"/>
                <
br/>
                <
input type="submit" name="submit_album_pass" value="Lass mich rein!" style="margin-top:10px;"/>
            </
form>    <div style="width:100%; height:30px; position:relative;    top:0px;left:0px;">&nbsp;</div>
</
div>
</
div><!-- END OF MAIN -->
</
body>
</
html
aramis вне форума  
Старый 12.12.2006, 08:16     # 11
Face
Junior Member
 
Аватар для Face
 
Регистрация: 09.08.2005
Адрес: Свердловская область
Сообщения: 112

Face Известность не заставит себя ждать
Залил страницу на Денвер, ввел "123", вывел var_dump($_REQUEST):
Код:
Array(2) { ["album_pass"]=>  string(3) "123" ["submit_album_pass"]=>  string(15) "Lass mich rein!" }
Залил сюда: _http://hermit.territory.ru/test.php , то же самое...

Попробуй поменять имя переменной "submit_album_pass" на какое-нибудь другое
Face вне форума  
Старый 12.12.2006, 15:39     # 12
PhoeniX
Advanced Member
 
Аватар для PhoeniX
 
Регистрация: 12.05.2004
Пол: Male
Сообщения: 482

PhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собойPhoeniX Имеются все основания чтобы гордиться собой
Цитата:
Face:
Залил страницу на Денвер, ввел "123", вывел var_dump($_REQUEST):

Код:
Array(2) { ["album_pass"]=> string(3) "123" ["submit_album_pass"]=> string(15) "Lass mich rein!" }

Залил сюда: _http://hermit.territory.ru/test.php , то же самое...

Попробуй поменять имя переменной "submit_album_pass" на какое-нибудь другое
Вы, похоже смысла вопроса не уловили, если кликать мышкой по кнопке - то все прекрасно передается, а вот если нажать Enter (читаем название темы) - вот тут возникает проблема, в приведенном вами примере проблема существует.

to aramis
экспериментально я вычислил, что если поставить здесь (во второй форме) второе поле ввода (input type=text), то все нормально начинает работать,
теоретической базы под это подвести пока не могу, равно как и не могу дать решение проблемы, но теперь имеется направление, в котором нужно копать...


а вот и теория, может чем-то поможет:
Если в форме присутствует одно единственное поле ввода, и мы в него осуществили ввод и после этого нажали на кнопку клавиатуры Enter, то браузер сгенерирует событие submit. Перехватить такое событие и обработать можно только за счет программы обработки события submit в контейнере FORM, как это и сделано в примере.

получается, что если одно поле ввода, то сразу генерируется событие, а если их несколько, то происходит как бы клик по кнопке, а та генерирует событие



решить проблему двух форми кроссбраузерности может помочь использование hidden полей-идентификаторов форм
__________________
Этот мир для таких, как мы,
Этот мир обречен на нас,
Но реальность не изменить,
И живем мы в ней здесь и сейчас.
(C) С.Маврин

Последний раз редактировалось PhoeniX; 12.12.2006 в 15:59.
PhoeniX вне форума  
Старый 12.12.2006, 19:55     # 13
Face
Junior Member
 
Аватар для Face
 
Регистрация: 09.08.2005
Адрес: Свердловская область
Сообщения: 112

Face Известность не заставит себя ждать
В FireFox 2.0 все работает так, как должно... в IE 7.0 такой глюк есть... самый лучший выход - использовать
Код:
<input type="hidden" name="submit_album_pass" value="Lass mich rein!">
Face вне форума  
Старый 12.12.2006, 20:44     # 14
aramis
Junior Member
 
Регистрация: 31.10.2002
Сообщения: 150

aramis Путь к славе только начался
остановились на следующем:
так как второй input нам был ни к чему, надо было что-то невидимое. hidden свою роль не выполнил(субмит не передаётся). сделали обыкновенный input type="text" и поставили его на display:none. работает. всем спасибо
aramis вне форума  


Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 03:51.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.