单独的表单,按特定顺序执行2个操作

时间:2015-12-04 16:54:51

标签: php forms submit

我有一张要求用户输入的表单。输入应该是我的数据库中存在的名称。

<p><span class="error">* required field.</span></p>
<form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
    Name: <input type="text" name="name" value="<?php echo $name;?>">
    <span class="error">* <?php echo $nameErr;?></span>
    <br><br>
    <input type="submit" name="login" value="Login">
</form>

我试图先检查用户输入,然后如果输入是干净的,请将用户发送到另一个网站。

这是我用来擦除输入的内容:

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    if (empty($_POST["name"])) {
        $nameErr = "Name is required";
    } else {
        $name = test_input($_POST["name"]);
        // check if name only contains letters and whitespace
        if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
            $nameErr = "Only letters and white space allowed"; 
        }
    }
}

然后我想在查询我的数据库并收到ID后发送到下一个站点:

<form action = "http://website.com/~username/site.php" method="get">
    Name: <input type="text" name="name"><br>
    <Input type="submit">
</form>

我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

使用header()函数实现目标

header('Location: yourfile.php?id=' . $yourIdValue); // adopt to your needs

在目标脚本中使用

获取ID
$id = $_GET['id'];