ldap_add() Error ช่วยด้วยครับ

สำหรับผู้ที่ เริ่มต้น Programming - PHP มีอะไร แนะนำ หรือข้อสงสัยต้องบอร์ด นี้ คนที่มีความรู้ แบ่งปันคนอื่นบ้างนะ ปัญหาการเขียนโปรแกรม แบบ OOP Session Cookies php network

Moderators: mindphp, ผู้ดูแลกระดาน

chuap006
PHP Newbie
PHP Newbie
Posts: 6
Joined: 19/08/2009 5:47 pm

ldap_add() Error ช่วยด้วยครับ

Post by chuap006 »

คือผมจะ Adduser ใน AD แต่มัน error ตรงการกำหนด DN ตามนี้ครับ
Warning: ldap_add() [function.ldap-add]: Add: Invalid DN syntax in C:\AppServ\www\AD2\add2.php on line 15

**ผมต้องกำหนด DN ยังไงครับ...

<?php
$ds = ldap_connect("172.16.1.10"); // assuming the LDAP server is on this host
if ($ds) {
// bind with appropriate dn to give update access
$r = ldap_bind($ds,"administrator@crhdomain.local", "xxxx");

// prepare data
$info["cn"] = "John Jones";
$info["sn"] = "Jones";
$info["mail"] = "jonj@crhdomain.local";
$info["objectclass"] = "person";

// add data to directory
$r = ldap_add($ds, "CN=test001, ou=CRHuser, DC=crhdomain, DC=local", $info);

ldap_close($ds);
} else {
echo "Unable to connect to LDAP server";
}
?>

ส่วน Active Directory ประมาณนี้ครับ
Attachments
Active Directory
Active Directory
AD.JPG (54.19 KiB) Viewed 1717 times
User avatar
ob1
PHP Hero Member
PHP Hero Member
Posts: 185
Joined: 01/01/1970 7:00 am
Contact:

Re: ldap_add() Error ช่วยด้วยครับ

Post by ob1 »

ผมก็ไม่เคยใช้นะครับแต่มันฟ้อง
Invalid DN syntax ไม่ถูกต้อง
ลองสร้างจากเครื่องมือนั้นว่ามันใช้ syntax อะไรแล้วลอง copy มาใช้ กับ php
chuap006
PHP Newbie
PHP Newbie
Posts: 6
Joined: 19/08/2009 5:47 pm

Re: ldap_add() Error ช่วยด้วยครับ

Post by chuap006 »

ผมลอง get_entries User อื่นมาดูแล้วก็จะได้ DN ตามนี้ครับ

dn is: CN=chuap,OU=CRHuser,DC=crhdomain,DC=local

เมื่อเทียบกันแล้วก็น่าจะตรง แต่มันก็ยัง Add ไม่ได้
รบกวนใครพอจะทราบช่วยแนะนำด้วยครับ ผมลองมาหลายวันแล้วแต่ไม่ได้ชะที
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25600
Joined: 22/09/2008 6:18 pm
Contact:

Re: ldap_add() Error ช่วยด้วยครับ

Post by mindphp »

ก่อน add ลองเพิ่ม

Code: Select all

    if ($ldapbind) {
        echo "LDAP bind successful...";
    } else {
        echo "LDAP bind failed...";
    }
 
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
chuap006
PHP Newbie
PHP Newbie
Posts: 6
Joined: 19/08/2009 5:47 pm

Re: ldap_add() Error ช่วยด้วยครับ

Post by chuap006 »

mindphp wrote:ก่อน add ลองเพิ่ม

Code: Select all

    if ($ldapbind) {
        echo "LDAP bind successful...";
    } else {
        echo "LDAP bind failed...";
    }
 
ผมลองเพิ่มเข้าไปแล้วครับ ตามนี้

Code: Select all

$ldapbind = ldap_bind($ds,"administrator@crhdomain.local", "xxxx");	
if ($ldapbind) 
{
      echo "LDAP bind successful...";      
} else {
        echo "LDAP bind failed...";
}
$r = ldap_add($ds, "CN=Jones,OU=CRHuser,DC=crhdomain,DC=local", $info);
และผลที่ได้คือ
LDAP bind successful...
Warning: ldap_add() [function.ldap-add]: Add: Invalid DN syntax in C:\AppServ\www\AD2\add2.php
User avatar
mindphp
ผู้ดูแลระบบ MindPHP
ผู้ดูแลระบบ MindPHP
Posts: 25600
Joined: 22/09/2008 6:18 pm
Contact:

Re: ldap_add() Error ช่วยด้วยครับ

Post by mindphp »

ผมก็ไม่ค่อยได้ใช้ LDAP นะครับแต่คิดว่าถ้าตรงนั้นผ่าน
น่าจะมีปัญหา เกี่ยวกับ $info
ลอง เปลี่ยน

Code: Select all

$info["objectclass"] = "person";
 
เป็น

Code: Select all

$info["objectclass"] = array("person");
หรือ 
$info["objectclass"][1] ="person";
 
หรือลอง $info["objectclass"] ออกไปก่อน ลองดูครับ วิธีไหนได้ บอกด้วยนะครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
chuap006
PHP Newbie
PHP Newbie
Posts: 6
Joined: 19/08/2009 5:47 pm

Re: ldap_add() Error ช่วยด้วยครับ

Post by chuap006 »

ขอบคุณครับ..ผมลองทั้ง 2 แบบแล้วแต่มันยังไม่ได้ แต่กรณีที่ 2 error มันเปลี่ยนไปครับ และผลที่ได้เป็นแบบนี้ครับ
1.

Code: Select all

<?php
$ds = ldap_connect("172.16.1.10");  // assuming the LDAP server is on this host
if ($ds) {
    // prepare data
    $info["cn"] = "John Jones";
    $info["sn"] = "Jones";
    $info["mail"] = "jonj@crhdomain.local";
    $info["objectclass"][0] = "top";
	$info["objectclass"][1] = "person";
	//$info["objectclass"][2] = "organizationalPerson";
	//$info["objectclass"][3] = "user";
    // add data to directory
    $ldapbind = ldap_bind($ds,"administrator@crhdomain.local", "xxxx");	
	if ($ldapbind) {
        echo "LDAP bind successful...";
		$ad = ldap_add($ds, "CN=Jones, ou=CRHuser, DC=crhdomain, DC=local", $info);
    } else {
        echo "LDAP bind failed...";
    }
    ldap_close($ds);
} else {
    echo "Unable to connect to LDAP server";
}
?> 
ผลลัพธ์
LDAP bind successful...
Warning: ldap_add() [function.ldap-add]: Add: Invalid DN syntax in C:\AppServ\www\AD2\add2.php on line 16
และวีธีที่ 2 ตัด objectclass ออกไป

Code: Select all

<?php
$ds = ldap_connect("172.16.1.10");  // assuming the LDAP server is on this host
if ($ds) {
    // prepare data
    $info["cn"] = "John Jones";
    $info["sn"] = "Jones";
    $info["mail"] = "jonj@crhdomain.local";
    // add data to directory
    $ldapbind = ldap_bind($ds,"administrator@crhdomain.local", "xxxx");	
	if ($ldapbind) {
        echo "LDAP bind successful...";
		$ad = ldap_add($ds, "CN=Jones, ou=CRHuser, DC=crhdomain, DC=local", $info);
    } else {
        echo "LDAP bind failed...";
    }
    ldap_close($ds);
} else {
    echo "Unable to connect to LDAP server";
}
?> 
ผลลัพธ์
LDAP bind successful...
Warning: ldap_add() [function.ldap-add]: Add: Object class violation in C:\AppServ\www\AD2\add2.php on line 16
User avatar
ob1
PHP Hero Member
PHP Hero Member
Posts: 185
Joined: 01/01/1970 7:00 am
Contact:

Re: ldap_add() Error ช่วยด้วยครับ

Post by ob1 »

ใกล้ๆจะออกแล้วครับ ผิดแถวๆนั้นแหละผมว่านะ :-D
Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Programming - PHP”

Who is online

Users browsing this forum: Google [Bot] and 14 guests