检查用户输入是否匹配值数组。 PHP

| 如果用户输入与我的数组中的邮政编码匹配的邮政编码,然后单击“转到”,则我有一个字段(用于邮政编码),然后单击“转到”-如果没有,则将它们重定向到下一步-显示“超出我们的服务范围”信息。表单和php脚本在同一页面上。到目前为止,我该怎么做?
     <form>
<input type=\"text\" id=\"zipcode\" name=\"zipcode\" />
<input type=\"submit\" id=\"submit\" value=\"GO\" />
</form>
<?php 
$allowedzips = array(\"10051\", \"10061\", \"10071\", \"10081\");
$input = echo $_POST[\"zipcode\"];
$input = str_split($input);
$message = \"Out of our service area\";
foreach($input as $zip) {
    if (in_array($zip, $allowedzips)) {
        $message //redirect goes here
        break;
    }
}
echo $message;

?>
    
已邀请:
PHP重定向很容易做到:
header(\'Location: www.example.com\');
exit;
确保为
exit;
,因为这将阻止脚本进一步执行。     
我认为最好使用javascript而不是PHP来实现此目的。 我要做的就是将此添加到您的html的头部
<script type=\"test/javascript\">

    function checkZipCode(zip) {
        var myZipCodes=new Array(\"10051\", \"10061\", \"10071\", \"10081\");
        for(i=0;i<myZipCodes.length;i++) {
            if (zip = myZipCodes[i]) {
                form.submit;
            }
            else
                window.location = \"redirectpage\";
        }
    }

</script>
然后在提交呼叫时,将邮政编码传递给checkZipCode。     
我会在PHP中执行此操作,以确保您不会被客户端欺骗 使用
in_array()
函数确定要查找的元素是否在有效邮政编码列表中,并进行相应的重定向。     

要回复问题请先登录注册