Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 107,992

HOME > PHP > PHP Forum > สอบถามเรื่อง LDAP ครับผมช่วยดู source หน่อยครับ สวัสดีครับผมได้มาจาก ของคุณ netkeeper นำมาแก้ไขครับ



 

สอบถามเรื่อง LDAP ครับผมช่วยดู source หน่อยครับ สวัสดีครับผมได้มาจาก ของคุณ netkeeper นำมาแก้ไขครับ

 



Topic : 040804



โพสกระทู้ ( 5 )
บทความ ( 0 )



สถานะออฟไลน์




สวัสดีครับ
ผมได้มาจาก http://drupal.org/files/issues/ldaptest.php__1.txt ของคุณ netkeeper นำมาแก้ไขครับ ผมลองเขียนเองแต่ก็ไม่เข้าใจทั้งหมดเลยเอาของเขามาทดลองบ้าง เพราะไม่เชื่อใจตัวเอง
แต่ก็เกิด error ครับผม หรือผมต้องตั้งค่าอะไรที่ AD หรือเปล่าครับ AD เป็น windows 2003 ครับผม
รบกวนพี่ๆน้องๆแนะนำส่งเสริมด้วยครับผม
LDAP query test

Connecting ... connect result is Resource id #2
Binding ... Starting TLS...
Warning: ldap_start_tls() [function.ldap-start-tls]: Unable to start TLS: Server is unavailable in C:\xampp\htdocs\Joomla\php_script\a.php on line 30
Cannot start TLS Bind result is 1
Searching for sAMAccountName=* ...
Warning: ldap_search() [function.ldap-search]: Search: Invalid DN syntax in C:\xampp\htdocs\Joomla\php_script\a.php on line 38
Search result is

Warning: ldap_count_entries(): supplied argument is not a valid ldap result resource in C:\xampp\htdocs\Joomla\php_script\a.php on line 41
Number of entires returned is
Getting entries ...

Warning: ldap_get_entries(): supplied argument is not a valid ldap result resource in C:\xampp\htdocs\Joomla\php_script\a.php on line 44
Data for items returned:

Closing connection

จาก source นะครับ

Code (PHP)
<?php

$host = "testad.com"; //อันนี้ผมเปลี่ยนใช้ชื่อ Active Directory ครับ
$port = "389";
$tls = true;
$dn = 'rattapong'; //User ผมเอง
$pass = '123456789'; // password ผม
$base = "basedn";
$scope = "sub";
$filter = "sAMAccountName=*";

echo "<h3>LDAP query test</h3>\n";
echo "Connecting ...\n";

$ds=ldap_connect($host, $port);
echo "connect result is " . $ds . "<br />\n";

ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION,3);
ldap_set_option($ds, LDAP_OPT_REFERRALS,0);


if ($ds) {
   echo "Binding ...\n";
	if (!ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3)) {
		echo "Failed to setup LDAP protocol to 3 - Start TLS not support\n";
		exit;
	}

	echo "Starting TLS...\n";
	if (!ldap_start_tls($ds)) {
		echo "Cannot start TLS\n";
	}

   $r=ldap_bind($ds, $dn."@".$host, $pass);
   echo "Bind result is " . $r . "<br />\n";

   echo "Searching for $filter ...";
   $sr=ldap_search($ds, $base, "($filter)"); 
   echo "Search result is " . $sr . "<br />\n";

   echo "Number of entires returned is " . ldap_count_entries($ds, $sr) . "<br />\n";

   echo "Getting entries ...<p>\n";
   $info = ldap_get_entries($ds, $sr);
   echo "Data for " . $info["count"] . " items returned:<p>\n";

   for ($i=0; $i<$info["count"]; $i++) {
       echo "dn is: " . $info[$i]["dn"] . "<br />\n";
       //echo "first cn entry is: " . $info[$i]["cn"][0] . "<br />\n";
       //echo "first email entry is: " . $info[$i]["mail"][0] . "<br /><hr />\n\n";
   }

   echo "Closing connection\n";
   ldap_close($ds);

} else {
   echo "<h4>Unable to connect to LDAP server</h4>";
}
?>





Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-03-25 14:34:39 By : boyachi View : 2979 Reply : 3
 

 

No. 1



โพสกระทู้ ( 581 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

LDAP คืออะไร connect กับ php เพื่อ วัตถูประสง ใด บอกกันหน่อยครับ..




Go to : โค๊ด PHP ตรวจสอบข้อมูล บน LDAP
Go to : LDAP พื้นฐาน.






Date : 2010-03-26 13:06:36 By : nilas
 


 

No. 2



โพสกระทู้ ( 5 )
บทความ ( 0 )



สถานะออฟไลน์


เท่าที่ทราบนะครับ
LDAP เป็น Function ที่มีมากับ php แล้ว เราแค่ Enable มันเท่านั้นหละครับ
ประโยชน์คือใช้ติดต่อกับ Active Directory หรือ AD เพื่อเช็ค User ต่างๆครับ
เช่นผมเขียนเว็บภายใน ต้องการให้ User ที่ใช้ต้องเป็น User จาก AD ด้วยก็น่าจะใช้
ตัวนี้เช็คเอาน่ะครับ
Date : 2010-03-29 08:38:29 By : boyachi
 

 

No. 3

Guest


เข้ามาช่วยเสริิมอีกคนนะครับ

<?php
$host = "192.168.0.1"; //ip server
$user = "[email protected]"; //username admin of server
$pswd = "12345"; //password server

$ad = ldap_connect($host) or die("Could not connect!");

ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3) or die ("Could not set ldap protocol");

$bd = ldap_bind($ad, $user, $pswd) or die ("Could not bind");

$dn = "DC=test,DC=com"; //มาตาม server คือ test.com หากมีมากกว่านี้ก็ใช้ DC เพิ่มเข้าไปอีก เช่น crop.test.com จะได้ "DC=crop,DC=test,DC=com"

$filter = "cn=*";

$search = ldap_search($ad, $dn, $filter) or die ("Search failed");


$entries = ldap_get_entries($ad, $search);

echo "<strong>FINE NUMBER : ".$entries["count"]." USER</strong><br><br>";

for ($i=0; $i<$entries["count"]; $i++) {
echo "dn is: ". $entries[$i]["dn"] ."<br>";
echo "first cn entry is: ". $entries[$i]["cn"][0] ."<br>";
echo "first email entry is: ". $entries[$i]["mail"][0] ."<br>";
echo "Title entry is: ". $entries[$i]["title"][0] ."<br>";
echo "Username is: ". $entries[$i]["samaccountname"][0] ."<br>";
echo "====================================================<br>";
}
?>

// จุดสำคัญคือส่วนของ ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3) or die ("Could not set ldap protocol") คือการบอกให้รู้ว่าเราใช้ protocal ระดับใหน
// หากไม่ใช่ฟังชั่นนี้อาจเกิด Warning: ldap_search() [function.ldap-search]: Search: Can't contact LDAP server in... ได้ครับ

ต้องขอออกตัวก่อนนะครับว่ายังเพิ่มเริ่มศึกษา อาจจะพอช่วยให้เป็นประโยชน์ได้บ้าง
www.tomdythai.com
Date : 2012-01-13 13:51:03 By : tomdythai
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : สอบถามเรื่อง LDAP ครับผมช่วยดู source หน่อยครับ สวัสดีครับผมได้มาจาก ของคุณ netkeeper นำมาแก้ไขครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: Voake, Comcube, รับทำเว็บไซต์ รับเขียนโปรแกรม

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2019 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 , 08-9968-0655 อัตราราคา คลิกที่นี่