如果$u GET[';id';]无效或为空,则重定向到home.php
如果$\u GET['id']为空或找不到具有该id的用户,我想重定向用户,有人能提供一个简单的示例吗?这是一个简单的示例。对于重定向,可以使用php的“header()”函数。希望这有帮助如果$u GET[';id';]无效或为空,则重定向到home.php,php,Php,如果$\u GET['id']为空或找不到具有该id的用户,我想重定向用户,有人能提供一个简单的示例吗?这是一个简单的示例。对于重定向,可以使用php的“header()”函数。希望这有帮助 if($_GET['id']==''){ header('Location:somepage.php'); } 这是一个简单的例子。对于重定向,可以使用php的“header()”函数。希望这有帮助 if($_GET['id']==''){ header('Location:so
if($_GET['id']==''){
header('Location:somepage.php');
}
这是一个简单的例子。对于重定向,可以使用php的“header()”函数。希望这有帮助
if($_GET['id']==''){
header('Location:somepage.php');
}
如果是空的,您可以使用DevMan提供的答案 如果数据库中没有id,则可以设置查询,创建变量$find=0,并使用while循环遍历该表,检查$\u GET['id']==$id(这是来自数据库的id) 如果它们匹配,则$find+,否则将保持0
if($find == 0){
header('Location:somepage.php');
}
如果您想同时使用这两个id,请首先检查它是否为空(如DevMan发布的),然后检查数据库中是否有我发布的id。如果它为空,则可以使用DevMan提供的答案 如果数据库中没有id,则可以设置查询,创建变量$find=0,并使用while循环遍历该表,检查$\u GET['id']==$id(这是来自数据库的id) 如果它们匹配,则$find+,否则将保持0
if($find == 0){
header('Location:somepage.php');
}
如果您想同时使用这两个id,请首先检查它是否为空(如DevMan发布的),然后检查数据库中是否有我发布的id。您可以使用PHP的
empty()
检查它是否为空
if(empty($_GET['id']) {
header("Location: page.php");
exit;
} else
// not empty
}
从字面意思来看,empty()
表示变量为空。它是一个BOOL函数,这意味着它将在为空时返回true
,在不为空时返回false
另外,请记住在
标题
之后使用退出
,因为除非声明退出
,否则PHP脚本不会停止执行。您可以使用PHP的empty()
检查脚本是否为空
if(empty($_GET['id']) {
header("Location: page.php");
exit;
} else
// not empty
}
从字面意思来看,empty()
表示变量为空。它是一个BOOL函数,这意味着它将在为空时返回true
,在不为空时返回false
另外,请记住在
标题
之后使用退出
,因为除非声明退出
,否则PHP脚本不会停止执行。我建议您使用函数清空
(),因为它检查其他情况,而不仅仅是空字符串。如果是一个简单的检查,你不需要使用大括号,把它放在你的文件开始,它应该工作
if(empty($_GET['id'])) {
header('Location:index.php');
exit;
}
我建议您使用函数
empty
(),因为它检查其他情况,而不仅仅是空字符串。如果是一个简单的检查,你不需要使用大括号,把它放在你的文件开始,它应该工作
if(empty($_GET['id'])) {
header('Location:index.php');
exit;
}
您要求满足这两个条件,但我认为您可以将所有检查封装在一个函数中
/**
* Checks if a user id is valid and user exists
* @param integer $id
* @return boolean
*/
public function validate_user($id){
// always validate whatever input you get from users
$valid_id = filter_var($id, FILTER_VALIDATE_INT);
if ($valid_id){
// check if the user_id is a valid user against your APP logic
return USER::getUser($valid_id);
}
return false;
}
if(!validate_user($_GET['id'])){
header('Location:home.php');
}
您要求满足这两个条件,但我认为您可以将所有检查封装在一个函数中
/**
* Checks if a user id is valid and user exists
* @param integer $id
* @return boolean
*/
public function validate_user($id){
// always validate whatever input you get from users
$valid_id = filter_var($id, FILTER_VALIDATE_INT);
if ($valid_id){
// check if the user_id is a valid user against your APP logic
return USER::getUser($valid_id);
}
return false;
}
if(!validate_user($_GET['id'])){
header('Location:home.php');
}
您是否尝试过任何方法来实现这一点?
if(empty($\u GET['id'))|$$countUserWithThisID>0){header(“Location:/index.php”);exit;}
--必须在任何输出之前执行此代码,因为这是header()
函数的要求。您尝试过任何方法来实现这一点吗?if(empty($\u GET['id'))| |$countUserWithThisID>0){header(“Location:/index.php”);exit;}
--必须在任何输出之前执行此代码,因为这是header()
函数的要求。使用empty()
更好,因为您可以使用现有的代码获得未定义的索引。另外,使用exit代码>在标题之后(“位置…”)
是个好主意。是的,你是对的,空函数在大多数情况下更好,但我想展示一个非常简单的方法,因为从这个问题中你可以看出提问者是初学者,所以我尝试给他一个简单易懂的答案。但感谢您的评论:)使用empty()
更好,因为您可以使用现有的代码获得未定义的索引。另外,使用exit代码>在标题之后(“位置…”)
是个好主意。是的,你是对的,空函数在大多数情况下更好,但我想展示一个非常简单的方法,因为从这个问题中你可以看出提问者是初学者,所以我尝试给他一个简单易懂的答案。但谢谢你的评论:)