PHP联系人表单中的重定向

PHP联系人表单中的重定向,php,html,redirect,contact-form,Php,Html,Redirect,Contact Form,我在wordpress上构建了一个PHP联系人表单,根据用户选择的区域重定向用户 我使用了“www.google.com”作为测试URL 但是,表单被重定向到我在WP上构建的自定义主题页面 我哪里做错了 请查找以下代码: <html> <head> <title> Meal Planner </title> </head> <body> <?php functio

我在wordpress上构建了一个PHP联系人表单,根据用户选择的区域重定向用户

我使用了“www.google.com”作为测试URL

但是,表单被重定向到我在WP上构建的自定义主题页面

我哪里做错了

请查找以下代码:

<html>
    <head>
        <title> Meal Planner </title>
    </head>
    <body>
    <?php
    function checkregion($Region)
    {
        SWITCH ($Region) {
            case "North":
                header('location:https://www.google.com/');
                break;
            case "South":
                header('location:https://www.google.com/');
                break;
            case "East":
                header('location:https://www.google.com/');
                break;
            case "West":
                header('location: https://www.google.com/');
                break;
        }
    }

    checkregion($Region);
    ?>
        <form action="<?= get_template_directory_uri() ?>/custompage1.php " method="POST">
            <p>Name</p> <input type="text" name="name">
            <p>Email</p> <input type="text" name="email">
            <p>Phone</p> <input type="text" name="phone">
            <p>Dropdown Box</p>
            <select name="Region" size="1">
                <option value="North">North</option>
                <option value="South">South</option>
                <option value="East">East</option>
                <option value="West">West</option>
            </select>
            <br/>
            <input type="submit" value="SUBMIT"><input type="reset" value="CLEAR">
        </form>
    </body>
</html>

膳食计划员

要在与表单相同的页面上调用
checkRegion
函数,除非此页面是
customepage1.php
,否则需要从表单中删除操作,并将POST变量
Region
作为输入参数传递给函数。在调用
header
函数时,应在生成任何HTML内容之前调用此函数(除非已启用
输出缓冲


膳食计划员
姓名

电子邮件

电话

下拉框

北 南方 东边 西部

膳食计划员

调用
checkregion($Region)时未设置
$Region
。使用WordPress nonces检索表单值()您好,感谢您的回复。然而,当我应用这段代码时,我得到了404错误。它有帮助还是仍然有问题?仍然有问题..获取页面未找到错误…是因为标题函数的调用方式…我需要在synatx上返工吗?你是说它还找不到google或其他url吗,未透露给我们?我刚刚测试了我上面发布的内容,效果很好。请注意,我确实在上面做了一个更改,因为我忘记了使用
$\u POST['Region']
作为
checkregion
函数的参数。但是,我在相同的代码中遇到了404错误……是因为我在wordpress中使用它吗?您可以在此处查看:尝试将名称字段重命名为
name='contact-name'
name='contact-email'
name='contact-phone'
来源:您好,我是这样做的……现在它没有给出404错误,而是停留在同一页面上。检查:
<?php

    function checkregion( $Region ) {
        switch ($Region) {
            case 'North': header('Location: https://www.google.com/'); break;
            case 'South': header('Location: https://www.google.com/'); break;
            case 'East': header('Location: https://www.google.com/'); break;
            case 'West': header('Location: https://www.google.com/'); break;
        }
    }
    if( !empty( $_POST['Region'] ) ) checkregion( $_POST['Region'] );
?>
<html>
    <head>
        <title> Meal Planner </title>
    </head>
    <body>
        <form method='POST'>

            <p>Name</p> <input type='text' name='name'>
            <p>Email</p> <input type='text' name='email'>
            <p>Phone</p> <input type='text' name='phone'>
            <p>Dropdown Box</p>

            <select name='Region' size='1'>
                <option value='North'>North
                <option value='South'>South
                <option value='East'>East
                <option value='West'>West
            </select>
            <br />
            <input type='submit' value='SUBMIT'><input type='reset' value='CLEAR'>
        </form>
    </body>
</html>
<?php
    if(isset($_POST['submit'])){
      $region = $_POST['Region'];
       switch ($region ) {
            case 'North': $url = 'https://www.google.com/'; break;
            case 'South': $url = 'https://www.google.com/'; break;
            case 'East':  $url = 'https://www.google.com/'; break;
            case 'West':  $url = 'https://www.google.com/'; break;
        }
     if(!empty($url)){
       header('Location: '+ $url);
     }
    }
?>
<html>
    <head>
        <title> Meal Planner </title>
    </head>
    <body>
        <form action="<?php the_permalink(); ?>" method="post">

            <p>Name</p> <input type='text' name='name'>
            <p>Email</p> <input type='text' name='email'>
            <p>Phone</p> <input type='text' name='phone'>
            <p>Dropdown Box</p>

            <select name='Region' size='1'>
                <option value='North'>North
                <option value='South'>South
                <option value='East'>East
                <option value='West'>West
            </select>
            <br />
            <input type='submit' name="submit" value='SUBMIT'><input type='reset' value='CLEAR'>
        </form>
    </body>
</html>