如何使用$ _POST以更简单的方式重新定位几个标头?

时间:2013-09-15 08:56:14

标签: php post header

非常抱歉,如果我没有更清楚地说明标题,因为我不确定如何用几句话来表达它。

这是事情,我有一个下拉列表,让我们说列表的值为

bbyc,dtc,atc等可能就像其中的10个。如果我在下拉列表中选择bbyc,那么该页面将转到bbyc.php

这就是我所做的。但是,我想知道我是否有10个这样做,我做了十次或者那里更容易吗?

if($_POST["location"] == "bbyc")
{
    header('Location: bbyc.php');
}

if($_POST["location"] == "dtc")
{
    header('Location: dtc.php');
}

if($_POST["location"] == "atc")
{
    header('Location: atc.php');
}

P.S。我试图搜索相关的内容,但我想我不确定如何使用确切的词来表达我想要的内容,因此我的搜索无法正常工作。

无论如何谁回复了谢谢

1 个答案:

答案 0 :(得分:4)

//Valid locations.
$options = array(
    'bbyc',
    'dtc',
    'atc',
);

//We have a post
if($_POST) {
    //There is a location set
    if (isset($_POST['location'])) {
        if (in_array($_POST['location'], $options)) {
            //The location is valid, since it's in our options array.
            //Send the user to the location.
            header('Location: ' . $_POST['location'] . '.php');
        } else {
            //We have not found the requested location.
            //Send to error page.
            header('Location: locationNotFound.php');
        }
    }
}