我正在使用 adldap http://adldap.sourceforge.net/
我将会话从页面传递到页面,并检查以确保会话中的用户名是某个成员组的成员,对于本示例,它是 STAFF 组。
<?php
ini_set('display_errors',1);
error_reporting(E_ALL);
require_once('/web/ee_web/include/adLDAP.php');
$adldap = new adLDAP();
session_start();
$group = "STAFF";
//$authUser = $adldap->authenticate($username, $password);
$result=$adldap->user_groups($_SESSION['user_session']);
foreach($result as $key=>$value) {
switch($value) {
case $group:
print '<h3>'.$group.'</h3>';
break;
default:
print '<h3>Did not find specific value: '.$value.'</h3>';
}
if($value == $group) { print 'for loop broke'; break; }
}
?>
它给了我错误:警告:在第 15 行为 foreach() 提供的参数无效,即这行代码:foreach($result as $key=>$value) {
当我取消注释代码 $authUser = $adldap->authenticate($username, $password); 并输入适当的用户名和密码,它工作正常,但我不应该这样做,因为会话是有效的,我只想看看存储在 valid_session 中的用户名是否是 STAFF 组的一部分。
为什么会给我这个问题?