2015-04-29 3 views
1

У меня есть две страницы, которые можно сказать first.php, second.php.Скрытая переменная, не проходящая, когда поле выбора отключено в php

first.php:

<form name=register method="post" action="second.php"> 
Name:<input type="text" name="username" value=<?=$username?> > 
Email:<input type="email" name="email" value=<?=$email?> > 
Hobbies:<select name="hobbies" id="hobbies" disabled> 
<option value="cricket">cricket</option> 
<option value="football">football</option> 
</select> 
</form> 

second.php:

<? 
print_r($_POST); 

Я получаю только имя и адрес электронной почты, а не выбрать значение.

Если я печатаю значение столбца, я не получаю значение select, но когда я удаляю отключенный в select, я получаю значение select в скрытом.

В этом случае я не хочу, чтобы пользователь выбирал поле выбора, и когда я отправляю форму, я должен получить значение в скрытом виде в second.php.

Я пробовал много возможных способов, но безрезультатно. Может ли кто-нибудь предложить мне, как я могу это достичь.

+1

Если выбрано поле отключено, и выбор по умолчанию не предусматривает то, что вы ожидаете от вывода. Вам нужно по умолчанию выбрать один из вариантов. – Codelord

+0

Трюки: если этот флажок отключен, используйте javascript/jquery для создания скрытого в нижней части формы. – AkiEru

+0

Использование 'disabled' в html не выдает значения элементов. Вам нужно передать скрытое значение – Krishna38

ответ

0

Отключенные теги не могут быть отправлены на POST. Изменение disabled - readonly или hidden

+0

его не работает, вы можете предложить мир кода для этого senario @kristiyan – Neelesh

0

Вы не можете поместить отключенное поле. Возможно, вы можете отключить selectbox прямо перед отправкой или вы можете (как и комментарии сообщать) получить скрытое значение для публикации, которое имеет стандартное значение, которое вы хотите. Если поле выбора может быть отправлено (поэтому не отключено), вы можете переписать скрытое значение с помощью значения выбора.

0

Вы можете сделать это с помощью Jquery перед отправкой формы.

<script> 
$(document).ready(function() { 
$('#register').submit(function() { 
    $('select').removeAttr('disabled'); 
}); 
}); 
</script> 
0

В

second.php

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

if($this->user->can_register()){ 
     $this->user->save($_POST['hobbies']); 
    } 

Потому что, если только с html или js исключения не достаточно, чтобы справиться с этим делом. Некоторые пользователи могут просто просмотреть элемент и удалить отключенный элемент.

Смежные вопросы