2017-11-25 120 views
0

如何检查会话ID是否在此代码中?如果它不在那里,我该如何添加它?检查会话ID是否在此代码中

<?php 
session_start(); 
if(isset($_REQUEST['login_button'])||$_REQUEST['auto']==1){ 
    require '../_database/database.php'; 
    $errmsg_arr = array(); 
    $errflag = false; 
    $username= mysqli_real_escape_string($database,$_REQUEST['username']); 
    $password= mysqli_real_escape_string($database,$_REQUEST['password']); 
    if($username == '') { 
     $errmsg_arr[] = 'Username missing'; 
     $errflag = true; 
    } 
    if($password == '') { 
     $errmsg_arr[] = 'Password missing'; 
     $errflag = true; 
    } 
    if($errflag) { 
     $_SESSION['ERRMSG_ARR'] = $errmsg_arr; 
     session_write_close(); 
     header("location: authentication-check.php"); 
     exit(); 
    } 
    $sql="SELECT user_username,user_password FROM user WHERE user_username='$username'AND user_password='$password'"; 
    $result= mysqli_query($database,$sql) or die(mysqli_errno()); 
    $trws= mysqli_num_rows($result); 
    if($trws==1){ 
     $rws= mysqli_fetch_array($result); 
     $_SESSION['user_username']=$rws['user_username']; 
     $_SESSION['user_password']=$rws['user_password']; 
     header("location:../home.php?user_username=$username&request=login&status=success");  
    } 
    else { 
     $errmsg_arr[] = 'user name and password not found'; 
     $errflag = true; 
     if($errflag) { 
      $_SESSION['ERRMSG_ARR'] = $errmsg_arr; 
      session_write_close(); 
      header("location: ../components/authentication-check.php"); 
      exit(); 
     } 
    } 
} 
?> 
+0

我很困惑。你的意思是检查'id'键是否在'$ _SESSION'?或者可能检查'$ _SESSION'数组是否已设置?请澄清 – Akintunde007

+0

这两者会更好。 –

+0

你想在哪里做这个检查?也许加上你的问题 – Akintunde007

回答

1

您可以使用会话ID喜欢

session_start();  
echo session_id(); 

或者您可以使用$_SESSION['user_username']做为会话的唯一标识符。

+0

假设我使用$ _SESSION ['user_username'] == $ rws ['user_username']; 我该如何将用户名记录到表格中。 –