如何放置两种形式在同一页面上?(How to place two forms on the same

2019-07-17 16:14发布

我希望把注册并登录表单在同一页上。
他们都开始于:

if (!empty($_POST)) ... 

所以,我需要的是这样的:

if (!empty($_POST_01))...  // regForm
  and 
if (!empty($_POST_02))...  //loginForm

也如何防止执行第一形式如果第二正忙,并且反之亦然(用户点击两者)
我的想法是在启动过程中创建一个简单的变量,例如$x = 1 ,并在过程结束$x = 0 ,所以:

if ((!empty($_POST_01)) And $x = 0)...

也许,有一个更好的办法。

Answer 1:

你可以做两种形式有2个不同的动作

<form action="login.php" method="post">
    <input type="text" name="user">
    <input type="password" name="password">
    <input type="submit" value="Login">
</form>

<br />

<form action="register.php" method="post">
    <input type="text" name="user">
    <input type="password" name="password">
    <input type="submit" value="Register">
</form>

或者这样做

<form action="doStuff.php" method="post">
    <input type="text" name="user">
    <input type="password" name="password">
    <input type="hidden" name="action" value="login">
    <input type="submit" value="Login">
</form>

<br />

<form action="doStuff.php" method="post">
    <input type="text" name="user">
    <input type="password" name="password">
    <input type="hidden" name="action" value="register">
    <input type="submit" value="Register">
</form>

然后,你的PHP文件就可以用作一个开关($ _ POST [“行动”])......此外,他们不能在同一时间点击这两个链接或进行同步的要求,每个提交是一个单独的请求。

那么你的PHP将继续与开关逻辑或有不同的PHP文件做了登录过程,然后注册程序



Answer 2:

那么你可以有各种形式去到不同的网页。 (这是优选的)

或对上了一定的投入和基础的职位不同的值:

switch($_POST['submit']) {
    case 'login': 
    //...
    break;
    case 'register':
    //...
    break;
}


Answer 3:

给提交按钮两种形式不同的名称和使用PHP来检查哪个按钮提交数据。

形成一个按钮 - BTN1形成两个按钮-btn2

PHP代码:

if($_POST['btn1']){
    //Login
}elseif($_POST['btn2']){
    //Register
}


Answer 4:

希望这会帮助你。 假设登录表单:用户名和密码的输入。

if(isset($_POST['username']) && trim($_POST['username']) != "" && isset($_POST['password']) && trim($_POST['password']) != ""){
//login
} else {
//register
}


Answer 5:

你可以使用这个最简单的方法。

 <form action="validator.php" method="post" id="form1"> <input type="text" name="user"> <input type="password" name="password"> <input type="submit" value="submit" form="form1"> </form> <br /> <form action="validator.php" method="post" id="form2"> <input type="text" name="user"> <input type="password" name="password"> <input type="submit" value="submit" form="form2"> </form> 



文章来源: How to place two forms on the same page?
标签: php html forms