+ -
当前位置:首页 → 问答吧 → 从LDAP获取邮箱列表,不完整

从LDAP获取邮箱列表,不完整

时间:2011-08-25

来源:互联网

不会PHP,下面的代码是从网上东拆西借拼凑的,倒是能用,但是有BUG,求助各位大侠帮忙。

背景描述:LDAP中每个账户都有对应的一个mail字段,记录了该员工的邮箱
需求描述:从LDAP服务器中获取HR部门所有员工的邮箱列表,在/home/test目录下生成对应文件
BUG描述:能获取到部分邮箱,但是不全,有一些没有写到文件中

不知道什么地方写错了,请指教
  1. <?php

  2. $file = fopen("/home/test/maillist", "w");
  3. // ldap bind
  4. $ldapdn = 'somebody';
  5. $ldappass = 'passwd';

  6. // connect to ldap server
  7. $ldapconn = ldap_connect("192.168.1.254", "389")
  8.         or die("Could not connect to LDAP server.");

  9. if ($ldapconn) {
  10.     // binding to ldap server
  11.     $ldapbind = ldap_bind($ldapconn, $ldapdn, $ldappass);

  12.     // verify binding
  13.     if ($ldapbind) {
  14.         //list ldap mail
  15.         $basedn = "OU=HR,DC=company,DC=com";
  16.         $ldapmail = array("mail");
  17.         $sr = ldap_search($ldapconn, $basedn, "objectClass=*", $ldapmail);
  18.         $info = ldap_get_entries($ldapconn, $sr);

  19.         for ($i = 0; $i < $info["count"]; $i++) {
  20.             echo $info[$i]["mail"][0] . "\n";
  21.             fwrite($file, $info[$i]["mail"][0] . "\n");
  22.         }
  23.     } else {
  24.         echo "LDAP bind failed...";
  25.     }
  26. }
  27. ?>
复制代码

作者: fanglei03   发布时间: 2011-08-25

沉了,自己顶一下

作者: fanglei03   发布时间: 2011-08-26