2009年12月31日木曜日

LDAP アプリケーションの流れ

LDAPでアプリケーション(PHP)を作るときの大まかな流れのメモです。

1.LDAPサーバに接続
$link_id = ldap_connect("localhost", 389)

2.LDAPユーザでの認証
ldap_bind($link_id, "cn=Manager,dc=sample,dc=com", "XXXX")

3.情報検索
$sr=ldap_search($link_id, "ou=People,o=System,dc=sample,dc=com", "uidなど")

データ数
ldap_count_entries($link_id, $sr)

4.情報表示
$info = ldap_get_entries($link_id, $sr)
$info[i]["gidnumber"][0] のように参照 i番目の検索情報のgidnumber(全部小文字)を表示
最後の[0]はgidnumberの情報数による

5.情報削除
ldap_close($link_id);

ほとんどDBでのものと変わりませんね。

6. 表示
6-1. var_dump で表示
echo '<pre>';
var_dump( $info );
echo '</pre>';

6-2. foreacheで表示
foreach( $info[0] as $key => $value ){
  echo $key. ":" .$value."<br />\n"; // 改行しながら値を表示
}

6-3. テーブルで表示
echo "<th bgcolor='#cceecc'>配列名</th><th bgcolor='#cceecc'>要素数</th><th bgcolor='#cceecc'>フィールド名</th><th bgcolor='#cceecc'>内容1</th><th bgcolor='#cceecc'>内容2</th><th bgcolor='#cceecc'>内容3</th><tr>";

foreach($info[0] as $t_key => $value_arr){

$num = 0;
//配列で1行表示
foreach($value_arr as $key => $value){

if($num > 1)
echo "<td>".$value."</td>";
else
echo "<td>".$t_key."</td><td>".$value."</td>";
$num++;

}
echo "</tr>";
}
echo "</table>";

0 件のコメント:

コメントを投稿