Ответы:
используй input type="submit", а не button type="submit"
нужны BUTTON'ы !!!! Потому что на портале 6 языковых версий, и чтобы не делать 12 картинок (минимум!) нужны баттоны. Для них прописанный стили через CSS.
с input'ами всё понятно. Пробюлема с button'ами
<form method="get" action="do.php">
<input type="text" name="address"><br>
<input type="submit" name="do1" value="Действие1"><br>
<input type="submit" name="do2" value="Действие2"><br>
</form>
возможно не стоит использовать dt и dd для позиционирования удобнее table
можно написать небольшой JavaScript который будет подменять action формы при нажатии буттона, чтото типа
up: если нельзя менять дизайн, то делайте
if(isset($_GET['do1'])){}
elseif(isset($_GET['do1'])){}...
Я предлагаю такой вариант:
<form method="get" action="do.php" name="subscribe_form">
<input id="submited_by" name="submited_by" value="" type="hidden">
<dl>
<dt><input name="address" value="" type="text"></dt>
<dd><button type="submit" name="do1" onClick='document.getElementById("submited_by").value=this.name'>Действие1</button></dd>
<dd><button type="submit" name="do2" onClick='document.getElementById("submited_by").value=this.name'>Действие2</button></dd>
</dl>
</form>
смотреть в $_GET['submited_by'], только без JS работать не будет.
А разве в PHP нельзя проверить то, установлен ли ключ или нет? Кроме того, какая разница, какой браузер (!!!), ведь всё-равно генерится URL?
To Цыба:
проблема в том, что Опера выдает URL
http://localhost:1957/Site/!TRASH!/do.php?address=something_to_do&do1=Action1
А вот IE: http://localhost:1957/Site/!TRASH!/do.php?address=something_to_do&do1=Действие1&do2=Действие2 при нажитии любой кнопки.
Предлагаю вариант :)
<form method="get" action="do.php" name="subscribe_form1">
<dl>
<dt><input name="address" value="" type="text"></dt>
<dd><button type="submit" name="do1" value="value1">Действие1</button></dd>
</dl>
</form>
<form method="get" action="do.php" name="subscribe_form2">
<dl>
<dd><button type="submit" name="do2" value="value2">Действие2</button></dd>
</dl>
</form>
По крайней мере получишь в URL только один параметр do1 или do2 :)
Спасибо bjaka.max. Класное решение :)
Спасибо Natrix. address не попадает во вторую форму
avokado,
ничего здесь идиотсткого не вижу. Например, лично я 100% возьму на заметку это issue IE 6.
2 Цыба
Идиотство в том что все браузера работает по какому-то стандурату, а IE отшелничает. Что потом сам признал, раз изменил в 7ой версии этот явный баг.
А использывание этой "фитчи" дело подозрительное - для чего? если это будет работать только на умирающих броузрерах. Чем эти юзеры отличаються от других пользователей? зачем что-то использовать только дня них.
Ну если только сообщить что у них умирающий браузер - и пусть скачают себе новый!
avokado,
я от том, что ты назвал тему идиотской. Это ты зря. Я же говорю, что мне она кажется довольно-таки полезной, и она может предостеречь от неожиданных результатов на IE <7. А то, что IE часто "выё", например, используя визуальные фильтры (конечно, поддерживаемых только на самом IE) вместо нормальной поддержки CSS-свойства opacity или совсем криво отображая .PNG-файлы с альфа-каналом, пусть будет на совести разработчиков IE.
17 лет назад