PHP-重新加载页面后,搜索结果仍然显示


PHP - Search results still show after I reload page

我想知道是什么原因导致我的搜索结果在用户刷新页面后仍然显示,以及我如何修复它。PHP代码:

$con = mysql_connect($db_hostname,$db_username,$db_password);
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }
mysql_select_db($db_database, $con);
if (!empty($_REQUEST['term'])) {
$term = mysql_real_escape_string($_REQUEST['term']);     
$sql = "SELECT * FROM FUMUKU WHERE TimeD LIKE '%".$term."%'"; 
$r_query = mysql_query($sql); 
while ($row = mysql_fetch_array($r_query)){  
echo '<br /> Stock: ' .$row['Stock'];  
echo '<br /> Price: ' .$row['Price'];  
echo '<br /> Time: '.$row['TimeD'];   
}  

HTML代码:

<form action="" method="post">  
Search: <input type="text" name="term" /><br />  
<input type="submit" value="Submit" />  
</form>  

您的PHP脚本在页面加载时执行。为了防止这种情况,您需要在PHP代码的顶部添加if(isset($_POST['submit'])) {,并将name="submit添加到提交按钮中。

<?php 
$con = mysql_connect($db_hostname,$db_username,$db_password);
if (!$con) {
 die('Could not connect: ' . mysql_error());
}
if(isset($_POST['submit'])) {
if (!empty($_REQUEST['term'])) {
$term = mysql_real_escape_string($_REQUEST['term']);     
$sql = "SELECT * FROM FUMUKU WHERE TimeD LIKE '%".$term."%'"; 
$r_query = mysql_query($sql); 
while ($row = mysql_fetch_array($r_query)){  
echo '<br /> Stock: ' .$row['Stock'];  
echo '<br /> Price: ' .$row['Price'];  
echo '<br /> Time: '.$row['TimeD'];   
}  
}
}  
?>
<form method="post">  
Search: <input type="text" name="term" /><br />  
<input type="submit" name="submit" value="Submit" />  
</form>