javascript - 实时检查用户可用性 LDAP

标签 javascript php ajax ldap

我在 LDAP 中有一个表单,我可以在其中添加用户和密码,我该怎么做才能使用 php 和 ajax 实时检查用户名,而不是 mysql,我不知道如何比较和切换mysql 中使用的 sqlquery 或 sql_num_rows 之类的命令并将其移至 LDAP,我在 php 上阅读了 LDAP 手册并且与 mysql 不同我如何在 LDAP 中替换此命令以便我可以实时检查我的用户名?使用 javascript(所有内容都应该在一页中)

http://www.developphp.com/video/PHP/Check-User-Sign-Up-Name-Ajax-PHP-Social-Network-Tutorial

https://www.webslesson.info/2016/02/how-to-check-username-availability-in.html

和其他网页尝试并使用 mysql

我使用了 ldap_connect、ldap_bind_ldap_search、ldap get entries 并且正在以有趣的方式打印出所有内容,所以使用 php 我清理了所有内容并以一种很好的方式打印了所有内容,我的问题是如何检查用户名? ??就像上面这个链接正在发生(测试)一样???

<label for="name"><b>name</b></label>
<input type="text" name="name" onBlur="checkusername() "maxlength="15"value="">
<span id="namestatus"></span>

<script>
function checkusername(){
  var status = document.getElementById("namestatus");
   var u = document.getElementById("name").value;
  if(u != ""){
    status.innerHTML = 'checking...';
    var hr = new XMLHttpRequest();
    hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    hr.onreadystatechange = function() {
      if(hr.readyState == 4 && hr.status == 200) {
        status.innerHTML = hr.responseText;
      }
    }
        var v = "name="+u;
        hr.send(v);
  }
}
</script>

$user = 'cn=Manager,dc=mydc ,dc=it';
$password = 'mypass';
$host = 'my_numeric_IP';
$basedn = 'ou=sistem,ou=thinks,dc=mydc,dc=it';
$ds = ldap_connect("ldap://{$host}") or die('Could not connect to LDAP     server.'); 
if($ldapbind){
$filter='(&(objectClass=inetOrgPerson)(uid=*))'; // single filter
$attributes=array('dn','uid','sn', 'displayName');
$search = ldap_search($ds,$basedn,$filter,$attributes); // search
ldap_sort($ds, $search, 'sn');
print_r($info = ldap_get_entries($ds, $search));
$info = ldap_get_entries($ds, $search);
$ldaprecord['cn'] = $_POST['name'];
$_dn = "uid=".$_POST[value'].",ou=".$_POST['othervalue'].",ou=VOIP,ou=sistem,dc=something,dc=it";
$r = ldap_add($ds, $_dn, $ldaprecord);
}else {
echo "LDAP bind failed";
    }

最佳答案

我认为这比只替换 mysql 函数要困难一些,因为 mysql(或其他 SQL 服务器)与 LDAP 不相似。 我建议为 LDAP 使用现有的 PHP 包。例如Adldap2对我来说看起来不错。并且有很多代码片段。例如 authentication

关于javascript - 实时检查用户可用性 LDAP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58214801/

相关文章:

javascript - 如何将外部库附加到 Protractor 配置文件?

php - 如何为持久性 PHP FastCGI 进程设计应用程序?

javascript - 使用 Ajax 在外部 Rest API 上调用 post

javascript - Vue.js如何替换点击按钮的文字

javascript - 访问外部回调函数参数的简单方法是什么?

javascript - toggle() 不适用于使用 ajax 加载的内容?

php - 在输入框中显示该字段的最后一条记录

java - PHP 为 ls 命令返回问号

javascript - 如何从异步调用返回响应?

javascript - 使用链选择器进行事件绑定(bind)