Я использую adLDAP для входа на интранет-сайт, который я создаю. Я только начал с интеграцией LDAP, и я относительно новичок в этой игре.
Мне удалось пройти проверку подлинности и войти в систему с помощью библиотеки adLDAP, но я хочу отобразить полное имя пользователя, когда он вошел в систему.
Вот логин-скрипт, который я использую. В основном так же, как пример adLDAP.
<?php
//log them out
$logout = $_GET['logout'];
if ($logout == "yes") { //destroy the session
session_start();
$_SESSION = array();
session_destroy();
}
//you should look into using PECL filter or some form of filtering here for POST variables
$username = strtoupper($_POST["username"]); //remove case sensitivity on the username
$password = $_POST["password"];
$formage = $_POST["formage"];
if ($_POST["loginform"]) { //prevent null bind
if ($username != NULL && $password != NULL){
//include the class and create a connection
include (dirname(__FILE__) . "/src/adLDAP.php");
try {
$adldap = new adLDAP();
}
catch (adLDAPException $e) {
echo $e;
exit();
}
//authenticate the user
if ($adldap->authenticate($username, $password)){
//establish your session and redirect
session_start();
$_SESSION["username"] = $username;
$_SESSION["loggedin"] = true;
$redir = "Location: http://" . $_SERVER['HTTP_HOST'] . dirname($_SERVER['PHP_SELF']) . "/loggedin.php";
header($redir);
exit;
}
}
$failed = 1;
}
?>
На странице входа у меня есть этот код:
<?php
session_start();
?>
<?php
$redir = "Location: /Kart";
if (isset($_SESSION['loggedin']) && $_SESSION['loggedin'] == true) {
include ("main.php");
} else {
header($redir);
}
?>
И в main.php я пытаюсь включить что-то вроде
<strong>Welcome </strong><?php printf("<b><i>$firstname $lastname</i></b>"); ?> - <a href="Logout.php">click here to log out</a>!
Как я могу отобразить полное имя зарегистрированного пользователя здесь?
Спасибо!
Собственность, которую вы ищете в Adldap, displayName
,
Проверьте документацию: http://adldap.sourceforge.net/wiki/doku.php?id=documentation_user_functions#infocollection_username_fields_null
Других решений пока нет …