0
是否可以獲取存儲在LDAP中的電子郵件地址並通過PHP發送郵件?名稱將保存在下拉框中。一旦我們從下拉菜單中選擇一個名稱,應該從LDAP中挑選相應的電子郵件ID,併發送郵件給它。從PHP獲取電子郵件地址的PHP代碼
是否可以獲取存儲在LDAP中的電子郵件地址並通過PHP發送郵件?名稱將保存在下拉框中。一旦我們從下拉菜單中選擇一個名稱,應該從LDAP中挑選相應的電子郵件ID,併發送郵件給它。從PHP獲取電子郵件地址的PHP代碼
是的,你可以用PHP(在PHP LDAP支持不是默認啓用的。你需要使用--with-LDAP [= DIR]配置選項)
以下是完整的PHP訪問LDAP關於這個主題的文檔:(http://php.net/manual/en/book.ldap.php)
下面是一個基本的例子,介紹如何訪問LDAP並從PHP文檔中檢索信息。
<?php
// basic sequence with LDAP is connect, bind, search, interpret search
// result, close connection
echo "<h3>LDAP query test</h3>";
echo "Connecting ...";
$ds=ldap_connect("localhost"); // must be a valid LDAP server!
echo "connect result is " . $ds . "<br />";
if ($ds) {
echo "Binding ...";
$r=ldap_bind($ds); // this is an "anonymous" bind, typically
// read-only access
echo "Bind result is " . $r . "<br />";
echo "Searching for (sn=S*) ...";
// Search surname entry
$sr=ldap_search($ds, "o=My Company, c=US", "sn=S*");
echo "Search result is " . $sr . "<br />";
echo "Number of entries returned is " . ldap_count_entries($ds, $sr) . "<br />";
echo "Getting entries ...<p>";
$info = ldap_get_entries($ds, $sr);
echo "Data for " . $info["count"] . " items returned:<p>";
for ($i=0; $i<$info["count"]; $i++) {
echo "dn is: " . $info[$i]["dn"] . "<br />";
echo "first cn entry is: " . $info[$i]["cn"][0] . "<br />";
echo "first email entry is: " . $info[$i]["mail"][0] . "<br /><hr />";
}
echo "Closing connection";
ldap_close($ds);
} else {
echo "<h4>Unable to connect to LDAP server</h4>";
}
?>
感謝您的快速反應,但是這是我得到的錯誤 ldap_search()搜索:上線18個 ldap_count_entries操作錯誤()預計參數2是資源,布爾線21個 ldap_get_entries給出()預計參數2是資源,布爾上線24 給出,這是輸出 連接...連接的結果是資源ID#2 綁定...綁定結果爲1 搜索(SN = S *)...搜索結果是 返回的條目數是 獲取條目... 返回項目的數據: 關閉連接 我對此完全陌生。 – SR1092
檢查您的綁定。如果沒有提供匿名綁定,函數ldap_bind接受2個參數bind_rdn和bind_password:http://php.net/manual/en/function.ldap-bind.php – sensor
謝謝!它正在工作。我在ldap綁定中定義了用戶名和密碼,以便它工作:)感謝您的幫助。 :) – SR1092