我正在尝试使用php Web应用程序连接到ldap . 如果用户名/密码是正确的,一切正常,但如果用户名/密码不正确,我会收到以下错误:
PHP警告:ldap_bind()[function.ldap-bind]:无法绑定到服务器:凭据无效
由于某种原因,我无法查看errorno或之后的绑定变量的状态来打印适当的用户友好错误消息 .
有任何想法吗?
问题很可能是 ldap_errno 采用了ldap connection resource ,并且当 ldap_bind 失败时,你可以't use it' s结果来检索errno .
ldap_errno
ldap_bind
另外:你试过通过 @ 标志来抑制错误吗?
@
例如 . :
$ldapconn = ldap_connect("localhost"); @$ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass); if( $ldapbind ) { // Everything went fine } else { // Use the connection resource for ldap_errno $errno = ldap_errno( $ldapconn ); // Check the error number, print an error message (...) }
在尝试绑定之前,您必须检查您的ldap连接是否正常:
$ldap_conn = ldap_connect($ldap_host,$ldap_port); if ($ldap_conn) { ldap_bind($ldap_conn, $ldap_user_dn, $ldap_pass); ... }
2 回答
问题很可能是
ldap_errno
采用了ldap connection resource ,并且当ldap_bind
失败时,你可以't use it' s结果来检索errno .另外:你试过通过
@
标志来抑制错误吗?例如 . :
在尝试绑定之前,您必须检查您的ldap连接是否正常: