Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
PHP: ldap_errno - Manual
[go: Go Back, main page]

PHP  
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  
<ldap_err2strldap_error" width="11" height="7"/>
view the version of this page
Last updated: Sun, 07 May 2006

ldap_errno

(PHP 3 >= 3.0.12, PHP 4, PHP 5)

ldap_errno --  直近の LDAP コマンドの LDAP エラー番号を返す

説明

int ldap_errno ( resource link_identifier )

このリンクに関する直近の LDAP コマンドの LDAP エラー番号を返します。

この関数は、指定した link_identifier に関して 直近の LDAP コマンドにより返された標準化されたエラー番号を返します。 この番号は、ldap_err2str() を用いてエラーメッセージ 文字列に変換することができます。

php.ini で警告レベルを十分に下げるか、警告出力を抑制するために LDAP コマンドに @ 文字をつけない限り、発生したエラーは、HTML 出力 にも表示されます。

例 1. エラーを生成し、取得する

<?php
// この例には、エラーがあり、これを取得します。
$ld = ldap_connect("localhost");
$bind = ldap_bind($ld);
// フィルター式に構文エラーがあります(errno 87)。
// 動作させるには、"objectclass=*" とする必要があります。
$res =  @ldap_search($ld, "o=Myorg, c=DE", "objectclass");
if (!
$res) {
   echo
"LDAP-Errno: " . ldap_errno($ld) . "<br />\n";
   echo
"LDAP-Error: " . ldap_error($ld) . "<br />\n";
   die(
"Argh!<br />\n");
}
$info = ldap_get_entries($ld, $res);
echo
$info["count"] . " matching entries.<br />\n";
?>

ldap_err2str() および ldap_error() も参照ください。



add a note add a note User Contributed Notes
ldap_errno
12-Apr-2002 08:23
Common LDAP error codes

LDAP_SUCCESS                    0x00
LDAP_OPERATIONS_ERROR          0x01
LDAP_PROTOCOL_ERROR            0x02
LDAP_TIMELIMIT_EXCEEDED        0x03
LDAP_SIZELIMIT_EXCEEDED        0x04
LDAP_COMPARE_FALSE              0x05
LDAP_COMPARE_TRUE              0x06
LDAP_AUTH_METHOD_NOT_SUPPORTED  0x07
LDAP_STRONG_AUTH_REQUIRED      0x08
// Not used in LDAPv3
LDAP_PARTIAL_RESULTS            0x09

// Next 5 new in LDAPv3
LDAP_REFERRAL          0x0a
LDAP_ADMINLIMIT_EXCEEDED        0x0b
LDAP_UNAVAILABLE_CRITICAL_EXTENSION    0x0c
LDAP_CONFIDENTIALITY_REQUIRED  0x0d
LDAP_SASL_BIND_INPROGRESS      0x0e

LDAP_NO_SUCH_ATTRIBUTE          0x10
LDAP_UNDEFINED_TYPE            0x11
LDAP_INAPPROPRIATE_MATCHING    0x12
LDAP_CONSTRAINT_VIOLATION      0x13
LDAP_TYPE_OR_VALUE_EXISTS      0x14
LDAP_INVALID_SYNTAX            0x15

LDAP_NO_SUCH_OBJECT            0x20  /* 32 */
LDAP_ALIAS_PROBLEM              0x21
LDAP_INVALID_DN_SYNTAX          0x22
// Next two not used in LDAPv3
LDAP_IS_LEAF                    0x23
LDAP_ALIAS_DEREF_PROBLEM        0x24

LDAP_INAPPROPRIATE_AUTH        0x30  /* 48 */
LDAP_INVALID_CREDENTIALS        0x31  /* 49 */
LDAP_INSUFFICIENT_ACCESS        0x32
LDAP_BUSY                      0x33
LDAP_UNAVAILABLE                0x34
LDAP_UNWILLING_TO_PERFORM      0x35
LDAP_LOOP_DETECT                0x36

LDAP_SORT_CONTROL_MISSING      0x3C    /* 60 */
LDAP_INDEX_RANGE_ERROR          0x3D    /* 61 */

LDAP_NAMING_VIOLATION          0x40
LDAP_OBJECT_CLASS_VIOLATION    0x41
LDAP_NOT_ALLOWED_ON_NONLEAF    0x42
LDAP_NOT_ALLOWED_ON_RDN        0x43
LDAP_ALREADY_EXISTS            0x44    /* 68 */
LDAP_NO_OBJECT_CLASS_MODS      0x45
LDAP_RESULTS_TOO_LARGE          0x46
// Next two for LDAPv3
LDAP_AFFECTS_MULTIPLE_DSAS      0x47
LDAP_OTHER                      0x50

// Used by some APIs
LDAP_SERVER_DOWN                0x51
LDAP_LOCAL_ERROR                0x52
LDAP_ENCODING_ERROR            0x53
LDAP_DECODING_ERROR            0x54
LDAP_TIMEOUT                    0x55
LDAP_AUTH_UNKNOWN              0x56
LDAP_FILTER_ERROR              0x57    /* 87 */
LDAP_USER_CANCELLED            0x58
LDAP_PARAM_ERROR                0x59
LDAP_NO_MEMORY                  0x5a

// Preliminary LDAPv3 codes
LDAP_CONNECT_ERROR              0x5b
LDAP_NOT_SUPPORTED              0x5c
LDAP_CONTROL_NOT_FOUND  0x5d
LDAP_NO_RESULTS_RETURNED        0x5e
LDAP_MORE_RESULTS_TO_RETURN    0x5f
LDAP_CLIENT_LOOP        0x60
LDAP_REFERRAL_LIMIT_EXCEEDED    0x61
ahall at mirapoint dot com
31-Jul-2001 11:16
Couple of good error codes to get started.  If you want to detect failure of ldap_add due to the record already existing, ldap_error == 0x44.  This means, you can do something like:

$r = ldap_add($ds, $dn, $info);
if (!$r) {
   if (ldap_errno($ds) == 0x44) {
         // Do something about it
   } else {
         // A real failure
   }
}

Similarly, on ldap_delete, you will get a 0x20 value (No Such Object) if you try to delete something that isn't there.

<ldap_err2strldap_error" width="11" height="7"/>
 Last updated: Sun, 07 May 2006
show source | credits | sitemap | contact | advertising | mirror sites 
Copyright © 2001-2006 The PHP Group
All rights reserved.
This mirror generously provided by: PacketBusiness, Inc.
Last updated: Mon Sep 4 13:20:40 2006 JST