2014-09-06 116 views
0

我希望你能帮上忙。我是PHP新手,这让我疯狂!PHP同时运行2个脚本

我有一个单独的登录和注册表单的HTML文件。其中每一个都有自己的PHP脚本来注册或登录。在为登录或注册表单测试输入错误消息时,它似乎同时运行这两个脚本,并获得了两者的错误消息。

我花了大部分时间试图找到解决方案,但无济于事。有没有一种方法可以为每个脚本定义一个名称,以便我可以将每个表单标签的操作添加到特定的PHP脚本中?

或者有没有一种方法使用基于哪个html按钮被按下的php if else语句?

预先感谢您

无望编码器

+4

这将是我们很难帮你没有看到你的代码。如果发布所有内容太大,那么显示问题的缩小大小的示例如何:http://stackoverflow.com/help/mcve – 2014-09-06 15:33:27

+0

您可以添加您的代码吗?所以PHP的配方和主要部分。 – hffmr 2014-09-06 15:35:33

+0

谢谢大家的回应,使用下面的解决方案我现在已经能够解决这个问题。 – 2014-09-06 17:46:00

回答

1

或者这有使用PHP的方式,如果else语句根据其 HTML按钮被按下吗?

是,假设你在PHP有

<input type='submit' name='subbtn' value='Register'> 
... 
<input type='submit' name='subbtn' value='Log In'> 

然后:

if ($_REQUEST['subbtn'] == 'Register') { 
    // they pressed register 
} else { 
    // they pressed log in (or some other submit button) 
} 
1

你可以一个隐藏的元素连接到您的方法

<input type="hidden" name="type" value="login"> 

<input type="hidden" name="type" value="register"> 

以上应该是各自的形式。

在PHP页面

<? 
    if($_POST['type'] == "login") { 
     // continue login operation 
    } else { 
     // do registration 
    } 
?> 
1

肯定有他们分成两个文件,然后分别呼吁采取行动的方式。

<form action="registration.php"> 
... 
</form> 
<form action="login.php"> 
... 
</form> 

或有另一种方式做一个文档中

<form action="" method="POST"> 
... 
<input type="submit" name="btn_register"> 
</form> 
<form action="" method="POST"> 
... 
<input type="submit" name="btn_login"> 
</form> 

<?php 
if(isset($_POST['btn_register'])) { 
    //Do the stuff with registration 
} 
if(isset($_POST['btn_login'])) { 
    //Do the stuff with login 
} 
?> 
+0

谢谢第二种方式在1个文档中完成工作。 – 2014-09-06 17:44:08

+0

我相信第一个也会工作。 – 2014-09-06 19:10:19