将变量从$ _GET传递到另一个页面

时间:2013-05-01 03:47:50

标签: php mysql

所以,我正在尝试做一个简单的搜索栏。输入搜索的查询将被拉到另一页。这完全没问题。当我尝试在脚本中使用该变量来增加数据库表中的查询行时,会出现问题。当我只是将一个表元素的名称放入而不是变量时,一切正常,但我需要抓住他们搜索的内容才能使其正常工作。

我认为你可以通过一个会话来做到这一点,但我不想为这么小的项目打扰会议。

这是我从搜索栏中提取变量的方法:

$query = $_GET['query'];

工作正常,但我无法将其转到新页面以便在这段代码中使用:

mysql_query("UPDATE inventory SET Sold=Sold+1 WHERE Brand='Skittles' OR Type='Candy'");

3 个答案:

答案 0 :(得分:2)

会话很容易使用。

<?php 

    session_start();

    $_SESSION['query'] = $_GET['query'];

?>

那将存储它,然后检索它就像使用$_GET['query']一样使用它,但使用$_SESSION['query']。它会持续到会话到期或被销毁。

答案 1 :(得分:1)

如果你真的想在那里使用它,你需要将查询作为参数传递给另一页:

next_page.php?query=something

答案 2 :(得分:0)

如果你想查询来自currentpage.php的nextpage.php

currentpage.php:

$query = $_GET['query'];

echo "<script> var url = nextpage.php?query=" . $query . "; onSomeEvent=function(){window.location.assign(url);}; </script>";

当你引用nextpage.php时可以使用这个url,然后可以在nextpage.php中访问该值:

$query = $_GET['query'];

将不必要的数据设置为会话变量不是一个好主意。欲了解更多信息: https://softwareengineering.stackexchange.com/questions/160947/should-session-variables-be-avoided