使用PHP_SELF后保留变量值

时间:2015-05-21 08:48:53

标签: php mysql

我使用此语句来检索我的记录:

$sql=mysql_query("SELECT * FROM myTable WHERE category = '$catvalue'");

变量$ catvalue取自使用PHP_SELF的不同选项的HTML选择。

$catvalue = ($_POST['value']);

问题是,我在我的页面上使用分页,因此每次单击其中一个分页号码时,由于分页ID(如下)存储在url和my中,我失去了$catvalue的值结果然后什么都没有显示。

if(isset($_GET['id'])) {
    $id = $_GET['id'];
    ...
}

如果我不过滤,它可以正常工作,但我需要得到和发布工作。任何想法或任何人都可以告诉我要学习什么?

谢谢!

4 个答案:

答案 0 :(得分:3)

如果您需要在刷新页面后记住$_POST['value'](例如,当您转到另一页时),请将其存储在会话中。

if (isset($_POST['value'])) {
    $_SESSION['cat_value'] = $_POST['value'];
}

不要忘记脚本开头的session_start()

答案 1 :(得分:2)

两种解决方案:

1)在添加分页时,您可以将$ catvalue作为url查询参数传递,并使用$ _GET [' catvalue']或

获取它

2)将$ catvalue的值存储在会话或cookie中,并从session或cookie变量中读取它的值。

答案 2 :(得分:0)

首先使用session_start()启动会话,然后使用以下代码。

session_start();
if (isset($_POST['value'])) {
    $_SESSION['catvalue'] = $_POST['value'];
}

答案 3 :(得分:0)

好的,这是我完成的作品,谢谢你的帮助。

session_start();
if (isset($_POST['value'])) {
echo $_SESSION['catvalue'] = $_POST['value'];
}
$sql=mysql_query("select * from myTable WHERE category='".$_SESSION['catvalue'] . "'");