如果用户填写不正确的信息,我试图重定向到尝试页面... 另一方面,如果尝试页面被刷新,则希望在登录页面上重定向... 我正在使用会话......
if (isset($c))
{
$q = mysql_query("select * from registeration where email='$a' and password='$b'");
$r = mysql_num_rows($q);
if($r)
{
$_SESSION["Authenticated"] = 1;
$_SESSION['id'] = $a;
}
else
{
$_SESSION["Authenticated"] = 0;
$_SESSION["att"] = 1;
}
if(isset($_SESSION["att"]))
{
header("location:attempt1.php");
}
else
{
session_write_close();
header('location:profile.php');
}
}
上面提到的代码在attempt1.php上重定向 但try1.php上的代码重定向回index.php
session_start();
if (!isset($_SESSION["att"]))
{
echo "<meta http-equiv=\"refresh\" content=\"0; url=index.php\">";
}
如果没有设置会话,我希望try1.php代码在index.php上的用户上重定向。 并在刷新或直接页面加载时销毁会话... 因此,直接访问此页面会导致重定向到索引页面 请帮朋友..
答案 答案 答案 我问过的所有问题我都犯了愚蠢的错误...... 在这个问题我没有开始会话wile存储会话变量.... 在登录脚本的第一行添加以下代码
session_start();
答案 0 :(得分:6)
//try this code
<?php
session_start();
if (!isset($_SESSION["att"]))
{
header("location: index.php");
}
?>
答案 1 :(得分:2)
我认为如果会话不存在,您要求重定向,因为会话需要一个ID,您应该可以检查该ID:
if(!(session_id()) header("Location: /mypage.php");
答案 2 :(得分:1)
试试这个:
if(empty($_SESSION))
{
header("Location: /mypage.php");
}
else
{
// do something ....
}
- 感谢