2014-09-04 5 views
-2

Я не могу понять, почему мое скрытое поле ввода еще показывает в исходном коде страницы:Скрытый вход еще показывает в исходном коде

<form method="POST" ACTION="score.php"> 
    <ul class="answer"> 
    <li> 
     <input type="checkbox" name="answer_0" value="<?php echo $answer_0; ?>"><?php echo answer_0;?></br> 
     <input type="hidden" name="right" value="<?php echo $right;?>"/> 
    </li> 
    </ul> 
    <button type="submit" class="btn btn-warning">Submit</button> 
</form> 

Что здесь не так? Я пробовал без переменной PHP, и скрытое поле все еще показывалось.

+5

Скрытие только предотвращает его визуализацию, оно не меняет источник. – Barmar

+0

если это экзаменационный вопрос, все студенты будут знать правильный ответ ха-ха! – Ghost

+0

@ Бармар правильный. Исходный код по-прежнему будет показывать скрытые поля. Все DOM и отображаемые HTML-коды показаны здесь – kimbarcelona

ответ

2

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

Если вы хотите скрыть что-то от пользователя безопасно, вы должны использовать переменные сеанса. Они хранятся на сервере, а не отправляются в браузер. Если вам нужно отправить что-то в браузер и не хотите, чтобы пользователь мог что-то получить от него, вы можете сначала зашифровать его. Но помните, вы не можете доверять, что пользователь не будет изменять его перед отправкой. Все, что приходит от браузера, может быть изменено пользователем.

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