验证来自下拉框的输入

时间:2010-12-12 03:26:06

标签: php

我有一个下拉框,它从我的数据库中提取数据。当用户输入数据时,我是否仍应验证服务器上的下拉数据?

2 个答案:

答案 0 :(得分:6)

是。如果您正在根据该数据存储,读取或执行某些操作,请始终验证您从客户端收到的任何信息。有人总是可以欺骗不使用浏览器的请求。

答案 1 :(得分:0)

验证它的简单方法是......

<?php

$array = array(1 => 'a', 2 => 'b');

if ($_POST) {

   if ( ! in_array($_POST['choose'], array_keys($array)) {
       echo 'Invalid input';
   }

}

?>

<form action="?" method="post">
    <select name="choose">
    <?php foreach($array as $value => $node): ?>
       <option value="<?php echo $value; ?>"><?php echo $node; ?></option>
    <?php endforeach; ?>
    </select>
</form>

您必须这样做,否则它也可能是文本输入:)