isset $_GET 没有显示正确的信息
isset $_GET not showing right info
我下面的代码不起作用
<?php
//Laat homepage zien als het leeg is
if(!isset($_GET['page']))
{
include 'includes/view/homepage.php';
echo $index;
}
elseif(empty($_GET["page"]))
{
include 'includes/view/homepage.php';
echo $index;
}
//Laat uitleg zien van hypixel api
elseif(isset($_GET['page']) === "hypixel")
{
include 'includes/view/hypixelapi.php';
echo $index;
}
//Laat errors zien die je kan krijgen
elseif(isset($_GET['page']) === "errors")
{
include 'includes/view/errors.php';
echo $index;
}
//Laat player api uitleg zien
elseif(isset($_GET['page']) === "player")
{
include 'includes/view/playerapi.php';
echo $index;
}
//Laat server api uitleg zien
elseif(isset($_GET['page']) === "server")
{
include 'includes/view/serverapi.php';
echo $index;
}
//Laat error 404 zien als het fout is
else
{
include 'includes/errors/404.php';
echo $index;
}
?>
当我去
localhost/directory/ or localhost/directory/?page=
显示首页
但是当我去
localhost/directory/?page=errors or localhost/directory/?page=hypixel
显示404页面
您正在比较 isset($_GET['page'])
和 "value"
。 isset
returns true/false,所以你想将 $_GET['page']
变量与 "value"
进行比较,而不是如果它已设置。
因此您的 elseif
语句应如下所示:
elseif($_GET['page'] === "hypixel")
{
include 'includes/view/hypixelapi.php';
echo $index;
}
您将使用 isset()
函数来分配变量,但事实并非如此:
isset($_GET['page']) === "player"
如果设置了 $_GET['page']
,这将 return true
。
从字面意思看isset()
表示设置了变量。是一个BOOL
函数,意思是设置时只能returntrue
,不设置/为空时只能false
因此,您的代码应该是:
$_GET['page'] == "player"
==
用于比较,而===
是是否相同,更多信息在The 3 different equals.
有关 isset()
的更多信息:http://php.net/manual/en/function.isset.php。
我下面的代码不起作用
<?php
//Laat homepage zien als het leeg is
if(!isset($_GET['page']))
{
include 'includes/view/homepage.php';
echo $index;
}
elseif(empty($_GET["page"]))
{
include 'includes/view/homepage.php';
echo $index;
}
//Laat uitleg zien van hypixel api
elseif(isset($_GET['page']) === "hypixel")
{
include 'includes/view/hypixelapi.php';
echo $index;
}
//Laat errors zien die je kan krijgen
elseif(isset($_GET['page']) === "errors")
{
include 'includes/view/errors.php';
echo $index;
}
//Laat player api uitleg zien
elseif(isset($_GET['page']) === "player")
{
include 'includes/view/playerapi.php';
echo $index;
}
//Laat server api uitleg zien
elseif(isset($_GET['page']) === "server")
{
include 'includes/view/serverapi.php';
echo $index;
}
//Laat error 404 zien als het fout is
else
{
include 'includes/errors/404.php';
echo $index;
}
?>
当我去
localhost/directory/ or localhost/directory/?page=
显示首页 但是当我去
localhost/directory/?page=errors or localhost/directory/?page=hypixel
显示404页面
您正在比较 isset($_GET['page'])
和 "value"
。 isset
returns true/false,所以你想将 $_GET['page']
变量与 "value"
进行比较,而不是如果它已设置。
因此您的 elseif
语句应如下所示:
elseif($_GET['page'] === "hypixel")
{
include 'includes/view/hypixelapi.php';
echo $index;
}
您将使用 isset()
函数来分配变量,但事实并非如此:
isset($_GET['page']) === "player"
如果设置了 $_GET['page']
,这将 return true
。
从字面意思看isset()
表示设置了变量。是一个BOOL
函数,意思是设置时只能returntrue
,不设置/为空时只能false
因此,您的代码应该是:
$_GET['page'] == "player"
==
用于比较,而===
是是否相同,更多信息在The 3 different equals.
有关 isset()
的更多信息:http://php.net/manual/en/function.isset.php。