gpt4 book ai didi

php - 如何在 PHP 中的另一个页面上携带搜索参数值

转载 作者:行者123 更新时间:2023-11-29 14:00:45 26 4
gpt4 key购买 nike

我有一个高级参数化查询,用户设置参数并相应地构建查询。我将表单的操作指向结果页面,并在该页面上使用 $_POST 获取值。

我正确地获取了这些值,但是当我刷新页面时,我丢失了 $_POST 的值。我需要为此使用 $_SESSION 吗?因为我不想要那么多 session ,所以一旦用户使用了它们,我就必须取消所有 session ,那么我该怎么做呢?

表单

<form action="result.php?script_id=3&sub_script_id=1">
<label for="search_for">Search For</label>
<select id="search_for" name="contact_first_name">
<?php
while($throw_names = mysqli_fetch_array($fetch_advance_param_values)) {
?>
<option value="<?php echo $throw_names['contact_first_name']; ?>"><?php echo $throw_names['contact_first_name']; ?></option>
<?php
}
?>
</select>
<br />
</form>

结果.php

<?php
$fetch_results = mysqli_query($running_db,
"SELECT rec_num, record_locked, contact_first_name, contact_last_name,
contact_mobile_no, contact_office_no FROM tbl_contacts WHERE
contact_first_name = '{$_POST['contact_first_name']}'
AND group_id_entry={$_SESSION['user_group_id']}
ORDER BY $sort_column_name $sort_order $limit_records");
?>

别担心,现在我在查询中直接使用$_POST['contact_first_name'],这只是为了测试目的,稍后我将使用mysqli_real_escape_string()

最佳答案

我不明白您为什么担心使用 session 或 GET 参数。无论如何,搜索表单通常都是用 GET 实现的。

但是还有另一个选择:将搜索本身保存在数据库中(这样 POST 表单实际上才有意义):

  1. 搜索表单已提交
  2. 将搜索查询另存为搜索表中的新行
  3. 重定向至 /searches/?id=1234
  4. 在该页面上,从 searches 表重建搜索查询并执行它

乍一看,这个解决方案看起来有点大材小用,但它提供了新的可能性,例如缓存搜索结果或让用户保存最喜欢的搜索。因此,在某些情况下这种方法是有意义的。

关于php - 如何在 PHP 中的另一个页面上携带搜索参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15108345/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com