0

我已经在 Ubuntu 14.04 中安装了 Openldap 并且我还安装了 phpldapadmin 在这一步之前一切看起来都很好,但是当我尝试用这个脚本连接我的 php 应用程序时,我得到了与结果资源 id #2 相同的响应

这是我的脚本:

$ds=ldap_connect("ladp://192.168.1.2",389)or die("Could not connect to $ldaphost");  

echo 'Le résultat de connexion est ' . $ds . '<br />';

if ($ds) { 
echo 'Liaison ...'; 
$username = "cn=admin,dc=ldap,dc=com";
$upasswd = "password";
$r=ldap_bind($ds,$username, $upasswd);    
echo 'Le résultat de connexion est ' . $r . '<br />';
4

1 回答 1

0

如果您使用的是 LDAP 2

当使用 OpenLDAP 2.xx 时,ldap_connect() 将始终返回一个资源,因为它实际上并不连接,而只是初始化连接参数。实际连接发生在下一次调用 ldap_* 函数时,通常使用 ldap_bind()。

我认为您可能需要在手册ldap_bind()中测试类似此建议的结果

<?php

    $ds=ldap_connect("ldap://192.168.1.2",389)or die("Could not connect to $ldaphost");  

    $username = "cn=admin,dc=ldap,dc=com";
    $upasswd = "password";
    $r=ldap_bind($ds,$username, $upasswd);  
    // verify binding
    if ($r) {
        echo 'Le résultat de connexion est ' . $r . '<br />';
    } else {
        echo "LDAP bind failed...\n";
        echo ldap_error($ds);
    }
于 2016-04-14T11:08:23.247 回答