1
我有一个搜索表单,并将搜索结果显示在与搜索表单相同的页面上。因此,在进行搜索之前,所有可能的结果都是可见的。一旦将关键字输入到表单中,结果只是包含关键字的结果。我希望表单显示显示结果时输入到表单中的关键字。我尝试过多种方法,而我最近的尝试是进入表单的各个部分,但没有运气。我搜索了多个教程网站,但没有找到要解决的特定请求。显示结果时,您可以帮助我将搜索条件保留在搜索框中吗?这里是我使用的代码:使用PHP显示结果时在搜索框中显示搜索条件
<html>
<body>
<?php error_reporting (E_ALL^E_NOTICE); ?>
<?php
function getRecords($query) {
$con = mysql_connect("localhost", "movie", "moviepw");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("movies", $con);
$result = mysql_query($query);
return $result;
}
function buildQuery() {
$keyword = $_GET['keyword'];
$sql = "SELECT * from table1 WHERE (movie_title LIKE '%$keyword%'
OR movie_description LIKE '%$keyword%')";
return $sql;
} ?>
<form action="movie_form.php" method=get>
<fieldset>
<legend>Movies</legend>
<label for="keyword">Search</label>
<input id="keyword" name="keyword" />
<input type=submit name=submit value=Search />
<? echo $keyword ?>
</fieldset>
</form>
<?
$query = buildQuery();
$records = getRecords($query);
while($row = mysql_fetch_array($records)){ ?>
<table>
<tbody>
<table border='1'>
<tr>
<td><?= $row['movie_title']; ?></td>
<td><?= $row['movie_rating']; ?></td>
<td><img src="<?= $row['movie_image'];?>"></td>
<td><?= $row['movie_description']; ?></td>
<td><a href="movie_form.php">Return to Search</a></td>
</tr>
<? } ?>
</tbody>
</table>
</body>
</html>
谢谢,埃里克。我在那里添加了它,但是我仍然没有得到搜索条件来继续在搜索框中显示。 – CherylAnnCE
另外,感谢注射信息! – CherylAnnCE
我看到了问题。 $关键字是在buildQuery方法中设置的,因此在输出表单时它不可用。我修改了我的答案以反映这一点。另外,我收紧了线。尝试这些修订;这个对我有用。 – Eric