2010-12-12 113 views

回答

6

是的。如果您正在存儲,讀取或執行基於該數據的某些操作,請始終驗證您從客戶端收到的任何信息。有人總是可以欺騙一個請求,而不是使用瀏覽器。

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> 

,你必須這樣做,否則它也可以被一個文本輸入:)