Как грамотно организвать форму(ы) в данном случае?..

Asar

Новичок
Как грамотно организвать форму(ы) в данном случае?..

Структура страницы:

Кнопка1 Кнопка2 Кнопка3 (все сабмит, расположены в один ряд)
Куча текстовых окон и чекбоксов (под этими кнопками)
Кнопка1 еще раз (сабмит, аналог Кнопки1 сверху)

Вопрос: Куда вставить тэги форм и /форм, чтобы:
При нажатии на Кнопку1 или Ентер в любом текстовом окне/чекбоксе шла загрузка данных (ПОСТ) из текстовых окон/чекбоксов и Кнопки1
При нажатии на Кнопку2 шли данные (ПОСТ) только с Кнопки2
При нажатии на Кнопку3 шли данные (ПОСТ) только с Кнопки3

? Как я понимаю, форму внутри формы сделать нельзя, а как еще... не додумываюсь.
 

crocodile2u

http://vbolshov.org.ru
При нажатии на Кнопку1 или Ентер в любом текстовом окне/чекбоксе шла загрузка данных (ПОСТ) из текстовых окон/чекбоксов и Кнопки1
При нажатии на Кнопку2 шли данные (ПОСТ) только с Кнопки2
При нажатии на Кнопку3 шли данные (ПОСТ) только с Кнопки3
Ничего не понятно.

Может быть, тебе нужно несколько форм на странице? Вложенных форм - нет, зато соседствующие - сколько угодно...
 

Asar

Новичок
В том то и проблема:
Как я понимаю, чтобы при нажатии на кнопку передовалось только значение этой кнопки, а не всех трех, их нужно разделить на 3 формы. НО. Т. к. кнопка1 находится между другими кнопками (другими формами) и кучей текстовых полей/чекбоксов (которые принадлежат к той же форме, что и кнопка1), то непонятно, как их можно разделить... Потому и прошу посоветовать, если кто знает.
 

crocodile2u

http://vbolshov.org.ru
Так это проблема верстки. Попробуй поиграться с позиционированием двух форм, в которых находится по одной кнопке.

Как вариант (по-моему, неплохой) - лучше скриптом разбирать пришедшие данные и определять, какое действие овершил пользователь. А сабмит - ну нехай все сабмитит. Главное сделать то, что нужно.
 

Asar

Новичок
Играться - игрался, но дезигн требует такого расположения...
О варианте - а как вообще разобрать скриптом, если собмититься всегда будут одни и те же данные?
 

crocodile2u

http://vbolshov.org.ru
Заведи индикатор действия. Допустим,
PHP:
<input type="hidden" name="_act_" id="_act_"/>
На кнопках отлавливаешь клик:
PHP:
<input type="submit" name="action1" onclick="changeAction(this)"/>
Javascript:
PHP:
function changeAction(obj) {
    document.getElementById("_act_").value=obj.getAttribute("name");
    return true;
}
Вариант без жабаскрипт -
PHP:
<input type="submit" name="action" value="ActionName"/>
В обработчике:
PHP:
switch ($_POST['action']) {
   case "ActionName":
   ...
   break;
   ...
}
 

Asar

Новичок
Гм... Так ведь при нажатии на любую кнопицу $_POST['action']="ActionName" будет... Или я чего то не догнал?

-~{}~ 29.06.05 13:38:

Сорри, понял. Нужно кнопки назвать одинаково, а делить по значению... Сенкс. Вери биг.
 

premiums

Guest
Попробуй поиграть со стилями
PHP:
 style="LEFT: 15px; POSITION: absolute; TOP: 194px"
 

crocodile2u

http://vbolshov.org.ru
premiums
Это я уже предлагал - не подходит. Да и действительно, абсолютно позиционировать - возможны расхождения в разных браузерах.
 

akxxiv

Новичок
А с чего вообще ты взял, что при нажатии на одну кнопку, передаются данные других кнопок? Если у тебя есть две кнопки с имнами name1 и name2, то при нажатии на кнопку name1 будет переданы name1=value1, а вэлью второй кнопки не передастся... помоему.... я так делал когда-то.
 

Asar

Новичок
akxxiv
crocodile2u
Неа, если обе кнопки в одной форме - у меня и в ФФ и в ИЕ передаются значения обеих кнопок...
 

Crazy

Developer
Автор оригинала: Asar
Неа, если обе кнопки в одной форме - у меня и в ФФ и в ИЕ передаются значения обеих кнопок...
Сдается мне, что гонишь ты. И про ФФ, и про ИЕ.
 
Сверху