将html表单嵌入到php代码中

时间:2014-05-08 18:34:32

标签: php forms if-statement statements

我在php之外的html上有一个表单...

<form method="post" action="">
<input type="text" name="user"/></br>

<input type="submit" value="submit" name="login"/> 
</form>

然后从php调用提交按钮并执行此操作

if(isset($_POST["login"]))
    {

            print <<<this

    <form method="post" action="">
            <input type="submit" name="apply"/>
            </form>
this;


             if(isset($_POST["apply"]))
             { print "it works";}


    }

好吧,问题是,“它的工作原理”不会从php内部的第二种形式打印出来。它只是让我回到我来自的地方。也许这是一个愚蠢的问题,请帮助!感谢

4 个答案:

答案 0 :(得分:0)

问题在于,当您检查if(isset($_POST["apply"]))时,登录条件无效,因为所有内容都在if(isset($_POST["login"]))内。

尝试在登录IF之外取if(isset($_POST["apply"]))

答案 1 :(得分:0)

你的&#34;申请&#34;代码仅存在于login测试代码中。当您提交第二个表单时,会有 login表单字段,因为您没有在第二个表单中包含该名称的输入/文本区域。所以第二种形式提交,没有login,整个内部代码永远不会被执行。你可能想要:

if(isset($_POST["login"]))
    {
            print <<<this

    <form method="post" action="" name="apply">
        <input type="hidden" name="login" value="foo" /> <!-- add this line -->
        etc...

答案 2 :(得分:0)

我不确定你想要对这段代码做什么,但你显然错过了一些细节:

_您没有在表单标记中设置“action”字段,所以我不明白您希望如何调用PHP文件? _你的代码if(isset($_POST['login']))毫无意义,你正在测试验证按钮发送的值的存在,你宁愿写isset($_POST['user'])

希望能帮到你

答案 3 :(得分:0)

您的变量以2种形式声明,因此您的php将有2次调用(完全独立)。

所以你可以在第二个表单中有第二个提交按钮:

if(isset($_POST["login"]))
{

        print <<<this
<form method="post" action="">
        <input type="submit" name="apply" value="Second"/>
        </form>

this;


}
if(isset($_POST["apply"]))
{ print "it works";}