我刚开始使用 LDAP,所以如果我以完全错误的方式执行此操作,请告诉我。
我正在使用 bhLDAPAuthPlugin 插件使用 Symfony 1.4
我正在使用 LDAP 验证用户登录。但是,我想使用用户名查询 LDAP 表中的更多数据。所以我正在编写这个搜索功能来根据用户名过滤结果:
function user_values($username) {
if (!$username) {
die ("Username is not there man!");
}
if (!$this->_conn) {
die ("No Connection.");
}
if (!$this->_base_dn) {
die ("No Base.");
}
$filter="samaccountname=".$username;
$attributes_ad = array("name");
$result = ldap_search($this->_conn, $this->_base_dn, $filter, $attributes_ad)
or die ("Error in search query");
$entries = ldap_get_entries($this->_conn, $result);
return($entries);
}
我收到错误消息:
警告:ldap_search(): Search: Bad search filter in /... 搜索查询错误
当我运行查询时。
前三个“如果”只是为了确保我获得了正确的搜索参数。该条件在实际搜索中失败。
有什么建议么?
更新
用户名变量是 jtesting
在将其放入搜索参数之前,我从函数中提取了 $username。它实际上是(jtesting)。我将删除括号,看看是否可以解决问题。