之前用过一个模块来调用认证域账号的,后来发现引用代码太多,由于只是为了作账号密码认证,不作其余任何查询什么的,因此干脆拔代码本身精简下,下面的代码只是利用了输入正确的账号密码建立ldap链接来判断密码是否正确。php
<?php if (isset($_POST['UserName'])) { $_SESSION['txtNo']=$_POST['UserName'] ; $ldapConnect=ldap_connect('192.168.1.200' , '389' ); //创建到ldap服务器的链接192.168.1.200是ldap服务器ip,389是ldap服务器端口(默认389) $bind= @ldap_bind($ldapConnect , $_POST['UserName'] . '@yourname.local',$_POST['PassWord'] ); //验证账号密码,ldap_bind第一个为绑定的链接,第二个为用户名(注意是否有后缀),第三个为密码。 if($bind ) {//验证成功,跳转到ok.php $_SESSION['login']="ok"; echo '<meta http-equiv="refresh" content="0;url=ok.php">'; } else {//验证失败,弹出提示,并跳转回login.php echo "<script>alert('用户名或密码错误')</script>"; echo '<meta http-equiv="refresh" content="0;url=login.php">'; } ldap_close($ldapConnect); //关闭ldap链接 } else { echo "<script>alert('用户名或密码错误')</script>"; echo '<meta http-equiv="refresh" content="0;url=login.php">'; } ?>