如果在inspect元素 - PHP中更改了值,如何验证复选框

时间:2018-05-15 09:19:30

标签: php html

正如标题所示,当有人试图更改inspect元素中的复选框值时,我想验证我的代码。但也要检查他们是否删除了复选框中的值。我无法想象如何验证这一点,因为用户可以通过多种方式查看它可以是ABC,BDE等等。这是我的代码示例。

<?php  
$letterError = "";

if(isset($_POST['submit']))
{
  $arrayLetters = array('A','B','C','BD','E','F');
  for($i = 0; i < 6; i++)
  {
    if(!in_array($_POST['letters'][i],$arrayLetters))
    {
       $letterError = "Invalid Letter";
    }
  }
}
?>
<input type="checkbox" id="letters[]" value="A">A<input>
<input type="checkbox" id="letters[]" value="B">B<input>
<input type="checkbox" id="letters[]" value="C">C<input>
<input type="checkbox" id="letters[]" value="BD">BD<input>
<input type="checkbox" id="letters[]" value="E">E<input>
<input type="checkbox" id="letters[]" value="F">F<input>
<span name="error"><?php echo $letterError;?><span>

1 个答案:

答案 0 :(得分:0)

您可以使用array_diff在输入中查找有效列表中没有的值。

$invalid = array_diff($_POST['letters'], $arrayLetters);
if (!empty($invalid)) {
    $letterError = "Invalid letters: " . implode(", ", $invalid);
}