如何将修改搜索功能添加到结果页面

时间:2012-01-08 11:16:49

标签: php mysql search html-select

我有一个PHP页面,显示分类广告网站的用户数据库查询结果。用户在主页上启动搜索并使用选择框选择搜索参数,然后提交表单。

进入结果页面后,我需要允许用户使用页面侧面的选择框修改搜索参数(主页上的相同框)。如何在每个选择框中选择的选项与第一页上选择的选项相匹配。即如果用户选择make:Audi和Model:A8我想让make和model的下拉列表列出所有其他选项,但是要预选到奥迪和预选到A8的模型。

我知道在select语句中使用为选项框选择的选项,但是如何获取已经为结果页面编码的select语句并为应该首先选择的选项插入选定的变量。

我希望这是有道理的。我没有发布任何代码,因为我正在寻找想法,而不是帮助修复代码问题。

1 个答案:

答案 0 :(得分:0)

当用户提交搜索表单时,表单中发布的所有变量都可以通过$ _POST或$ _GET使用。使用这些变量在结果页面上的搜索表单中重新选择正确的信息。

<select name="model">
   <option value="a8" <?php echo (isset($_POST['model']) && $_POST['model'] == 'a8') ? 'selected' : ''; ?>>A8</option>
</select>  

修改

动态数据库方式:

<select name="model">
<?php
$getRows = mysql_query("SELECT * FROM models");
while($row = mysql_fetch_assoc($getRows))
{
    echo '<option value="" ' . ((isset($_GET['model']) && $_GET['model'] == $row['model']) ? 'selected' : '') . '></option>';
}
?>
</select> 

现在你只需要一个if语句。你应该使用使用GET参数,这样用户就有机会将结果加入书签供以后使用。