我有3页: -登录 -家 -另一页
在登录名中,我初始化$ _SESSION:
$_SESSION['admin'];
提交登录表单后,重定向到首页 在文件顶部,我的代码是:
home.php:
<?php session_start(); ?>
<?php if(isset($_SESSION['admin'])) {?>
write content if $_SESSION is true
<?php }else{ ?>
write content if $_SESSION it's false
<?php } ?>
这一次执行一次就成功了,一次也没有,如果是从家到我,请转到另一页,始终遵循以下代码,总是会得到错误的结果
如何在登录页面中初始化$ _SESSION使其始终有效?
我认为这也是未解决的$ _SESSION问题
logout.php:
<?php
session_unset('admin');
header("location: index.php?sd=Y");
?>
<script type="text/javascript">
window.location = "index.php";
</script>
答案 0 :(得分:0)
1st如果用户名和密码的用户输入与具有 $ _ SESSION
的数据库记录匹配,则应保存要进一步使用的用户凭证 include("..\includefiles\db.php");
$email =$_POST["email"];
$password = $_POST["password"];
$sql = "SELECT * FROM member WHERE email ='$email' AND password = '$password'";
$result = mysqli_query ($con,$sql);
if($row = mysqli_fetch_array($result)){
$_SESSION['ID'] = $row['id'];
$_SESSION['NAME'] = $row['name'];
$_SESSION['ROLE'] = $row['role'];
if($_SESSION['ROLE']=='a'){
header("Location: ..\dashBoard.php");
}else{
header("Location: ..\index.php");
}
保存会话后,您所需要做的就是以
开始会话每个页面中的session_start()
功能。请注意, session_start()函数必须是文档中的头等内容。在任何HTML标记之前。然后检查会话的可用性以及是否未设置会话重定向到登录页面。请参见下面的代码。
<?php
session_start();
if(isset($_SESSION["ROLE"])){
}else{
header("Location: login.php");
}
?>
<!DOCTYPE html>
希望您可以从中获得一些东西。