【发布时间】:2012-12-29 21:54:30
【问题描述】:
如果我要设置一个
if(isset($_GET['var']))
{
//stuff with only 1 variable
}
如果我的网址是这样的,我该如何正确设置它
http://www.url.com/test.php?var=something&var2=somethingelse
所以当这个 url 有 2 个 get 变量时,它不应该显示 isset($_GET['var']) 中的代码块。相反,它应该显示此块中的代码
if(isset($_GET['var']) && isset($_GET['var2']))
{
// block of codes with 2 variables
}
但是,第一块代码也会显示出来,因为没有什么可以告诉它不应该显示是否还有其他变量。
【问题讨论】:
-
我不明白这部分,(它不会在 1 变量中显示任何内容,因为如果我只有 isset($_GET['var']),那么它将显示所有内容即使在 URL 中添加了更多变量)
-
@softgenic 抱歉,我提醒了,它会显示该 isset($_GET['var']) 中的所有内容
-
好的,你想要的是当两个变量通过 url 传递时,它应该运行
$var1 && $var2并且应该忽略$var1。在这种情况下,您可以使用if (isset($var1) && !isset($var2)) { then code will run for if 2nd varaiable is not there } -
@softgenic 问题是如果用户决定弄乱 URL 并添加其他变量怎么办?不仅是 var2,还有其他一些变量。如果用户在 URL 中有一些其他变量(例如
?var=something&var4=something),您显示的代码不会阻止用户查看博客,现在他们有 var4 而不仅仅是 var2