[英]PHP if statement with isset not working
我認為這是簡單的代碼,但這不能按預期工作:
$id = $_GET['id'];
if (!isset($id)){
header("HTTP/1.1 404 not found");
include("404.php");
}
else {
include('includes/functions.php');
}
所以我從URL獲取了get參數但我沒有收到404錯誤?
有任何想法嗎?
你必須直接在$_GET['id']
上進行測試:
if(!isset($_GET['id']) { ... }
即使未設置$_GET['id']
,因為您嘗試將其分配給$id
, $id
開始存在,因此測試返回true,因此您沒有404錯誤。
您正在檢查是否設置了$ id。 它是:
$id = $_GET['id'];
所以你必須檢查是否設置了get變量:
isset($_GET['id'])
你在第一行創建了$ id變量。 你應該檢查$_GET['id']
。 您也可以將此變量檢查為空。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.