使用php数组进行表单验证

时间:2016-01-13 23:09:22

标签: php arrays validation match

我希望有人可以帮我完成一些PHP代码(avon家伙已经帮我解决了这个问题,但我仍在努力争取最后一点)。

它是,我有一个表格,我有10个特定的数字序列,如果输入,允许表格重定向到下一页。如果输入任何其他内容,我希望页面拒绝访问某种错误提示。

在php的顶部,在打印任何php之前的部分中,avon guy建议使用一个数组来检查10个正确的序列。

$possibles = array('rva858', 'anothersequence', 'andanother'); 
$match = $_POST['nextpage']; 
if (array_search($match, $possibles) != false) { 
    //match code in here 
} else { 
    // fail code in here 
}

我不确定在这里输入//匹配代码和//这里的失败代码是什么。有人可以帮我最后一点吗?

非常感谢

乔恩

1 个答案:

答案 0 :(得分:2)

如果您只是尝试使用php重定向到另一个页面,则可以使用header('Location: mypage.php');。有关标题here的更多信息。

因此,对于您的代码示例(根据评论进行编辑)

<强> invitation.php

<?php
//invitation.php
$possibles = array('rva858', 'anothersequence', 'andanother');
$match = $_POST['nextpage']; 
if (array_search($match, $possibles) === false) 
{  
    //If fail
    header('Location: formpage.php?errorMessage=Incorrect code!');
    exit();
} 
//If success:
//All of the invitation.php html and success code below

<强> formpage.php

<?php
//formpage.php
if(!empty($_GET['errorMessage'])){
    echo '<span>' . $_GET['errorMessage'] . '</span>';
}
?>
<form action="invitation.php" method="post">
    <input name="rsvp" type="text" />
    <input type="submit" value="Submit" name="submit" />
</form>