Модераторы: Illuminaty
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> передача состояния checkbox 
:(
    Опции темы
veterrus
Дата 14.8.2009, 11:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 10.5.2007

Репутация: нет
Всего: нет



Помогите кто может!
Не могу понять почему не работает код:

Есть три файла.

в первом файле есть checkbox:
<input type="checkbox" name="field_first" value=first>

во втором есть формы которые я заполняю.

в третьем файле идет проверка состояния checkbox из первого файла и обработка формы из второго:
if ( ! isset($_POST["field_first"]) ){

Действие1

} else {

Действие2

}

по цепочке через hidden, передаеться в третий файл:
echo "<input type=\"hidden\" name=\"field_first\" value=$_POST["field_first"]>";


По идее если checkbox не отмечен должно выполняться Действие1,
а выполняеться Действие2, или я что то напутал с isset или теряется во втором файле состояние checkbox?
Как передать состояние checkbox через несколько файлов?

Заранее спасибо за помощь


PM MAIL   Вверх
w03zd8rc
Дата 14.8.2009, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 128
Регистрация: 26.2.2007

Репутация: нет
Всего: нет



а не проще ли в адресной строке состояние передавать тогда?
PM MAIL   Вверх
youri
Дата 14.8.2009, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: 5
Всего: 16



а у тебя что мастер, что ты checkbox'ы передаешь?
PM   Вверх
skyboy
Дата 14.8.2009, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 6
Всего: 260



Цитата(veterrus @  14.8.2009,  10:58 Найти цитируемый пост)
По идее если checkbox не отмечен должно выполняться Действие1,

если у тебя checkbox отмечен, то будет формироваться такой код:
Код

<input type="hidden" name="field_first" value=first>

если у тебя checkbox не отмечен, то будет формироваться такой код:
Код

<input type="hidden" name="field_first" value=>

что, кстати, некорректно.
тебе надо значение value заключать в кавычки, как и name, тогда у тебя было бы корректное:
Код

<input type="hidden" name="field_first" value="">

но твоя проблема не в этом. а в том, что это скрытое поле с именем field_first передается в любом случае(с value или без него)!
и isset($_POST["field_first"]) всегда будет возвращать true. тебе надо проверять не наличие $_POST["field_first"], а содержимое этой переменной:
Код

if ( $_POST["field_first"] != "" ){ ....
//или 
if ( !empty($_POST["field_first"]) ){ ....

PM MAIL   Вверх
bars80080
Дата 14.8.2009, 13:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прапор творюет
****
Награды: 1



Профиль
Группа: Завсегдатай
Сообщений: 12022
Регистрация: 5.12.2007
Где: Königsberg

Репутация: 50
Всего: 315



ерунда, вы бы нарисовали себе эту цепочку и прояснили бы действия элементов

с первого файла во второй ничего не передаётся, если чекбокс не нажат, но во втором у вас введено поле field_first, которое по любому будет передано дальше. это же поле hidden, переменная будет создана, даже с пустым значением, если в поле ничего не введено

в таком случае для успешности проверки в третьем файле надо указать: if (empty($_POST["field_first"]) ){

PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.1598 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.