2017-05-24 14 views
0

PHPのLDAPサーバーにいくつかのデータ値を追加しようとしています。 phpを使ったLDAPは私のために新しいものです。 私はインターネット上の私の問題で多くの答えを見つけられませんでした。私が見つけたことは、私の問題に本当に答えなかったのです。ldap_add() - >オブジェクトクラス違反

Here is my code : 
$entry["cn"] = $_POST["name"]; 
$entry["sn"] = $_POST["name"]; 
$entry["objectclass"] = "person"; 

$ans = ldap_add($LDAP_LINK, $dn, $entry); 

My $ LDAP_LINK変数と$ dn変数は、すでに表示モジュールを実行しているので正しいです。 (私は接続されており、私が必要とするすべてのエントリーをリストしました)。私はその両方の変数については確信しています。 私のコードを起動すると、$ ansはfalseになり、私はこのPHPエラーになります:警告:ldap_add():オブジェクトクラスの違反を追加します...

助けてくれてありがとう。

答えて

0

許可された属性のみを追加できます。あなたのエントリのオブジェクトクラスのリストにtopを追加する必要がありますのでobjectClassは、抽象オブジェクトクラスtopの属性タイプである:

$entry["objectClass"][0] = "top"; 
$entry["objectClass"][1] = "person"; 

ほとんどのLDAPサーバーでは、あなただけのpersonように誘導された構造クラスを選択することはできません。すべてのスーパークラスを常に明示的に追加して安全に再生してください。