私はここでLDAPを使用してすぐに使用できるので、これを完全に間違った方法で行っているかどうかを知らせてください。
私はbhLDAPAuthPluginプラグインを使用してSymfony1.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():検索:/...の検索フィルターが正しくありません検索クエリでエラーが発生しました
クエリを実行したとき。
最初の3つの「if」は、検索用の正しいパラメーターを取得していることを確認するためのものです。条件は実際の検索で失敗します。
助言がありますか?
アップデート
ユーザー名変数はjtestingです
$ usernameを関数から取得してから、検索パラメーターに入れました。実は(jtesting)です。括弧を削除して、問題が解決するかどうかを確認します。