|
|
|
php จะทำยังไงครับ ถ้าเชื่อมต่อกับ ldap server ไม่ได้ แล้วให้จบการทำงาน |
|
|
|
|
|
|
|
Code (PHP)
$ldap_con = ldap_connect($ldap_serv) or die("ldap_discon");
if(!$ldap_con)
{
echo "Error";
exit();
}
ลองดูแบบนี้ครับ
|
|
|
|
|
Date :
2012-07-21 21:01:33 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่มีอะไรเกิดขึ้นเลยครับ งงเหมือนกัน แต่ถ้า echo $ldap_con; ออกมาดู
จะได้ Resource id# 2 ครับ โค้ดก็ธรรมดา ๆ ไม่มีอะไรพิสดาร ldap server
ก็เป็น win2003 แต่ตอนนี้ไม่ได้เปิดไว้ เพราะอยากทดสอบว่า ถ้า connect
ไม่ได้ มันจะเป็นยังไง แต่มันดันไม่ฟ้องอะไรเลย ลองเพิ่ม error_reporting(1);
เข้าไปในบรรทัดบนสุด ก็ยังไม่มีอะไรเกิดขึ้น
<?
error_reporting(1);
$ldap_serv = "192.168.1.1";
$ldap_port = 389;
$ldap_con = ldap_connect($ldap_serv,$ldap_port) or die("ldap_discon");
if(!$ldap_con)
{
echo "Error";
exit();
}
echo $ldap_con;
?>
|
ประวัติการแก้ไข 2012-07-21 22:28:36
|
|
|
|
Date :
2012-07-21 22:25:56 |
By :
NarinNil |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยังไม่เข้าใจว่าทำไม ldap_connect มันถึงไม่ยอมหยุดหลังจาก die แถมไม่ echo ออกมาด้วย
ตอนนี้ใช้วิธีนี้แก้ขัดไปก่อนครับ ใช้การ ping ไปที่ server แทน ถ้า ping แล้วไม่เจอให้ echo ออกมา
$ldap_serv="192.168.1.1";
$ldap_port=389;
$ldap_cmd = exec("ping -n 1 -w 1 ".$ldap_serv, $ldap_input, $ldap_result);
if($ldap_result)
{
echo "ldap_discon";
exit();
}
else
{
$ldap_con = ldap_connect($ldap_serv,$ldap_port);
}
|
ประวัติการแก้ไข 2012-07-23 11:36:33
|
|
|
|
Date :
2012-07-23 11:35:42 |
By :
NarinNil |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|