如何设置$_GET
功能可以使用的变量,而无需使用action = GET
提交表单?
答案 0 :(得分:37)
$_GET
包含在URL中传递给脚本的键/值。
如果您有以下网址:
http://www.example.com/test.php?a=10&b=plop
然后$_GET
将包含:
array
'a' => string '10' (length=2)
'b' => string 'plop' (length=4)
当然,由于$_GET
不是只读的,如果需要,您还可以从PHP代码中设置一些值:
$_GET['my_value'] = 'test';
但这似乎不是一种好的做法,因为$_GET
应该包含来自客户端请求的URL的数据。
答案 1 :(得分:12)
您可以创建一个链接,在href中获取变量。
<a href="www.site.com/hello?getVar=value" >...</a>
答案 2 :(得分:3)
您可以在action
元素的form
参数中使用GET变量。例如:
<form method="post" action="script.php?foo=bar">
<input name="quu" ... />
...
</form>
这会将foo
作为GET变量,quu
作为POST变量。
答案 3 :(得分:2)
如果你想在包含文件时伪造$ _GET(或$ _POST),你可以像使用任何其他var一样使用它,如:
$_GET['key'] = 'any get value you want';
include('your_other_file.php');
答案 4 :(得分:1)
设置^ Start of line
\s* 0 or more whitespace characters
变量的一种方法是使用parse_url()
解析网址
然后使用parse_str()
解析$_GET
字符串,将变量设置为$query
全局变量。
这种方法很有用,
$_GET
结果:function setGetRequest($url)
{
$query = parse_url($url, PHP_URL_QUERY);
parse_str($query, $_GET);
}
$url = 'http://www.example.com/test.php?a=10&b=plop';
setGetRequest($url);
var_dump($_GET);
包含
$_GET
答案 5 :(得分:0)
从{URL}中设置的参数填充$_GET
变量。在网址http://example.com/test.php?foo=bar&baz=buzz
中,您可以获得$_GET['foo']
和$_GET['baz']
。因此,要设置这些变量,您只需要建立指向该URL的链接。
答案 6 :(得分:0)
对于表单,请使用:
<form name="form1" action="<?=$_SERVER['PHP_SELF'];?>" method="get">
并且要获取值,请使用get方法,如下所示:
$value = $_GET['name_to_send_using_get'];
答案 7 :(得分:0)
您可以使用以下代码将客户端重定向到附加了_GET变量的脚本。
header("Location: examplepage.php?var1=value&var2=value");
die();
这会导致脚本重定向,确保die();
保留在那里,或者它们可能不会重定向。
答案 8 :(得分:-2)
我知道这是一个老线程,但我想发布我的2美分......
使用Javascript,您可以在不使用$ _POST的情况下实现此目的,从而避免重新加载页面..
<script>
function ButtonPressed()
{
window.location='index.php?view=next'; //this will set $_GET['view']='next'
}
</script>
<button type='button' onClick='ButtonPressed()'>Click me!</button>
<?PHP
if(isset($_GET['next']))
{
echo "This will display after pressing the 'Click Me' button!";
}
?>