我一直在模拟mysql & php搜索页面,该页面正在按预期工作。但是,当表单为POSTed 并且不返回结果时,<option>标记会被重置,我想知道是否可以防止这种情况发生?
META:我知道mysql_*的不推荐和mySQL注射的可能性,这只是一个快速的模型。
<?php
mysql_connect("localhost","root","") or die('Could not connect');
mysql_select_db("webhost") or die ('Could not find DB');
$output = '';
// Queries
if (isset($_POST['submit'])) {
$dsquery = $_POST['Diskspace'];
$prquery = $_POST['Price'];
$query = mysql_query("
SELECT * FROM data WHERE Diskspace BETWEEN $dsquery
AND Price BETWEEN $prquery
") ;
$count = mysql_num_rows($query);
if ($count == 0){
$output = "No such results, sorry.";
}else{
while($row = mysql_fetch_array($query)){
$diskspace = $row['Diskspace'];
$price = $row['Price'];
$host = $row['Provider'];
$output .= '<div>'.$host.' '.$diskspace.' '.$price.'</div>';
}
}
print ("$output");
}
?>发布于 2014-01-03 03:47:49
您可以使用AJAJ/AJAX。这是保留表单数据的一种方法。
有许多jQuery特性,比如.post和.ajax,都可以做到这一点。
您还可以创建一个对象并存储post数据。
你也可以使用会话。
https://stackoverflow.com/questions/20896132
复制相似问题