php / mysql - form:第二次搜索后如何保持第一次搜索的值?

时间:2016-04-23 16:05:08

标签: php mysql forms

我使用搜索表单 Director1 的值以 CompanyDirectors 的形式自动输入“director_id_1”的值,它正在运行。

但是,如果我使用搜索表单 Director2 来自动输入“director_id_2”的值,则它正在工作,但同时“director_id_1”的值将再次为空。

那么,如何在搜索 Director2 之后保持“director_id_1”的自动输入值

以下代码保存在同一页面中:Director.php

<h2> Company Director(s) - Input</h2>

<hr style="border: 1px dotted #2c1294;">

<form name="Director1" action="" method="POST" accept-charset="UTF-8" >
<input type="text" name="QueryDirector1" />
<input type="submit" name="DirectorName1" value="Search Name of Director 1 to input ID" />
</form>

<form name="Director2" action="" method="POST" accept-charset="UTF-8" >
<input type="text" name="QueryDirector2" />
<input type="submit" name="DirectorName2" value="Search Name of Director 2 to input ID" />
</form>
	
<hr style="border: 1px dotted #2c1294;">


<form name="CompanyDirectors" method="post" action="Director_insert.php" accept-charset="UTF-8" >
<b>ID of Director 1:</b>
<input type="number" name="director_id_1" required="required" value="<?php echo $director_id_1; ?>" >

<br>
<b>ID of Director 2:</b>
<input type="number" name="director_id_2" required="required" value="<?php echo $director_id_2; ?>" >

<br>
<input type="submit" name="submit" value="Submit">
</form>

非常感谢你的帮助和帮助。先支持!

1 个答案:

答案 0 :(得分:0)

如果你的问题(我觉得很难理解)是:

  

我希望在提交第二份表格(导演2)时保留第一份表格(导演1)上已提交的任何内容,反之亦然。我怎么能做到这一点?

然后我的答案是使用会话数据库 持久性

如果我正确理解您的问题,您不明白HTTP请求(本质上)是无状态的。换句话说:当您提交任何表单数据时,它将在服务器端处理,然后不再存在。 &#34;州&#34;然后就消失了。

您可以暂时将提交的数据缓存在$_SESSION[...]变量中,或者您可以将其存储到数据库中(并将其检索回来)或在浏览器中使用HTML5存储或执行不太优雅的操作,例如使用隐藏的HTML第二种形式的输入。 (或者只使用一种形式。)

一些有用的链接:

例如:

<?php
session_start();
if (isset($_POST['DirectorName1'])) {
   $_SESSION['directors'][1]['name'] = $_POST['DirectorName1'];
}
if (isset($_POST['DirectorName2'])) {
   $_SESSION['directors'][2]['name'] = $_POST['DirectorName2'];
}

然后打印$_SESSION而非$director_id_1

的值

如果没有完整的代码副本,很难提供帮助。