使用PHP根据条件进行搜索,并根据结果显示表单

时间:2017-04-10 16:13:06

标签: php html forms

我正在尝试使用PHP接受用户输入并根据他们将分配给他们的代码进行搜索,以便他们可以在线注册课程。一旦他们搜索了他们的代码,它将显示在同一页面上的结果。我并没有真正使用PHP,我试图解决这个问题。我尝试过不同的东西,但是无法让它发挥作用。下面的代码是我正在测试的,而不是实际完成后的代码。

<form>
  First name:<br>
  <input type="text" name="UserSubmission">
  <br>
  <input type="submit" value="Submit">
</form> 

<?php
 $U = UserSubmission;

 if ($U = "MJPJPL0509")   

    <form action="mailto:someone@somewhere.com" method="post"> 
        Full Name:<br>
        <input type:"text" name="name">
        <br>
        <input type="submit" value="Submit">
    </form>



?>

2 个答案:

答案 0 :(得分:0)

这应该有效。查看评论

<?php

// added in echo for php script.
//form should have method and action.
echo '<form method = "POST" action = "#">
  First name:<br>
  <input type="text" name="UserSubmission">
  <br>
  <input type="submit" value="Submit">
</form>'; 


if(isset($_POST['UserSubmission'])){

 //naming convention of $U : best practice should be $u
 $U = $_POST['UserSubmission'];

 // in your code, it shows: if($U = "MJPJPL0509") , it should be if($U == "MJPJPL0509"). Because you are comparing the string not assiging a variable.
 if ($U == "MJPJPL0509") {

    echo '<form action="mailto:someone@somewhere.com" method="post"> 
        Full Name:<br>
        <input type:"text" name="name">
        <br>
        <input type="submit" value="Submit">
    </form>';


    }

}



?>

答案 1 :(得分:0)

我不确定你的问题到底是什么,我不是PHP的神但是......

HTML表单对其输入字段数据执行POST。要在PHP脚本中获取它,请执行$ _POST [“form_item_name_not_ID”]。你可能希望确保这不是空的,等等你在前端和后端进行正常的验证。

接下来,假设您正在使用MySQL并且已经为它设置了服务器,您可以按照此处的步骤进行操作:

http://php.net/manual/en/book.mysqli.php

您可以使用fetch assoc以递归方式循环mysql结果,这些结果将是关联数组 - 与JSON基本相同,因为它们是键值对。请注意,该函数不会返回一些可以循环的对象,它似乎以递归方式执行操作,因此您无法尝试输出此内容。

http://php.net/manual/en/mysqli-result.fetch-assoc.php

HTML表单将在帖子后刷新您所在的页面,因此如果您想要更改页面内容,我个人不会提交表单,而是使用ajax来发布到您的PHP脚本。这样你就可以简单地回显一个变量,ajax success部分就会收到它。这可以只是一串html。

最后,为了帮助您在PHP脚本中编写HTML,您可以使用HEREDOC,这样您就可以用可读的方式编写。它的超级简单,这是一个例子:

http://php.net/manual/en/language.types.string.php#language.types.string.syntax.heredoc