업데이트 아래 조언에 따라. 그러나 여전히 작동하지 않습니다. 어떤 도움이 필요합니까?LDAP 사용자가 PHP 세션을 사용하여 로그인 상태 유지
저희 회사는 Active Directory LDAP를 사용하며이 웹 사이트에 로그인하기 위해 사용자를 인증하기 위해 adLDAP를 사용하고 있습니다.
지금까지는 작동하지만 .. 페이지를 방문 할 때마다 다시 로그인해야합니다. 이것에 대한 해결책은 세션입니다. 하지만 로그인 한 사용자를 유지하기 위해 세션에 저장하기 위해 무엇을 알아낼 수 없습니다
이
내login.php
페이지의 상단에 포함되어 있습니다.
auth.php
<?php
//include LDAP authenication script
require_once('LDAP/adLDAP.php');
$adldap = new adLDAP();
$username = $_POST['account'];
$password = $_POST['password'];
$authUser = $adldap->authenticate($username, $password);
$userinfo = $adldap->user_info($username, array("*"));
if ($authUser == true) {
$_SESSION['LDAP']['login'] = true
}
?>
<?php
if (empty('LDAP')) session_start();
if (!isset($_SESSION['LDAP']['login'] && $_SESSION['LDAP']['login'] !== true) {
header('Location: login.php');
exit; // dont forget the exit here...
}
?>
은 지금, 때마다 나는 내가 로그인 내 인덱스 페이지
index.php
를 방문, 내가 메인 페이지로 이동 해요 :
또한 모든 페이지의 상단에 나는이 있습니다. 그것은 완벽하게 작동합니다. 그러나 페이지를 새로 고치면 다시 로그인해야합니다.
페이지를 새로 고칠 때마다 로그인 할 필요가 없으므로 세션에 무엇을 저장해야합니까? 나는 그것을 알고
로 시작 :
session_start();
그러나 나는 그것이 무엇을 저장 몰라?
감사합니다. 나는 당신이 당신의 세션'LDAP'을 부르는 것을 이해하지만 왜 [로그인]을 사용하고 있습니까? 어디에서 왔는가? – Devin
절대로, [login]을 true로 설정하고 true로 설정되어 있는지 확인합니다. 하지만 로그인 할 때 이것을 어떻게 설정합니까? – Devin
if ($ adldap-> authenticate ($ username, $ password)) {$ _SESSION [ 'LDAP'] [ 'login'] = true} 인증 된 사실이 올 것 같아요. –