【问题标题】:Check for username while typing in field?输入字段时检查用户名?
【发布时间】:2011-01-18 22:57:53
【问题描述】:

我精通 HTML,主要是 PHP。

我可以用 PHP 做扫描部分。我只是不知道如何用 JavaScript 调用 PHP 中的函数,因为我不懂 JavaScript。

我的 PHP 代码将连接到我的 MySQL 数据库,并查看当前文本框中的文本(尚未单击输入,仍在输入)是否在数据库中..

你知道怎么做吗,或者至少知道一个告诉你怎么做的链接?

【问题讨论】:

  • 如果您打算在登录页面上执行此操作,出于安全原因,我建议您不要这样做。主动告诉潜在的黑客他们获取他人访问权限所需的登录信息的一部分通常不是一个好主意。
  • 我建议你先学习 JavaScript,然后再学习 jQuery。这是一种简单而强大的语言。您可能还想看看 Ajax,否则,您总是会发现困难,实现最简单的事情。

标签: php javascript sql mysql html


【解决方案1】:

这个post 有一个很好的例子,你可以调整你的代码

【讨论】:

    【解决方案2】:

    这听起来像是 jQuery 的问题。我会给你一个冗长的例子,但有很多人会给你一个更好的例子:like this guy

    【讨论】:

      【解决方案3】:

      考虑将jQueryjQuery UI 结合使用,特别是称为autocomplete 的东西。我相当肯定它可以满足您的需求,而且它完全适合您的网站。

      【讨论】:

        【解决方案4】:

        我看到每个人都非常喜欢 jQuery,哇! 我会告诉您只需要一些非常基本的 Ajax 脚本来调用您的 PHP 脚本并接收响应。 这是简单的Javascript函数(实际上是两个):

        function getXMLObject() {
          var xmlHttp = false;
          try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");// For Old Microsoft Browsers
          }
          catch (e) {
            try {
              xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");// For Microsoft IE 6.0+
            }
            catch (e2) {
              xmlHttp = false;// No Browser accepts the XMLHTTP Object then false
            }
          }
          if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
            xmlHttp = new XMLHttpRequest();//For Mozilla, Opera Browsers
          }
          return xmlHttp;// Mandatory Statement returning the ajax object created
        }
        
        var xmlhttp = new getXMLObject();//xmlhttp holds the ajax object
        
        //use this method for asynchronous communication
        function doRequest(scriptAddressWithParams, callback) {
          if (xmlhttp) {
            xmlhttp.open("POST", scriptAddressWithParams, true);
            xmlhttp.onreadystatechange = function () {
              if (xmlhttp.readyState == 4) {
                if (xmlhttp.status == 200) {
                  callback(xmlhttp.responseText);
                }
                else {
                  alert("Error retrieving information (status = " + xmlhttp.status + ")\n" + response);
                }
              }
            };
            xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
            xmlhttp.send(null);
          }
        }
        

        下面是一个用法示例:

        <input type="text" onchange="doRequest('myphpscript.php?checkvalue='+this.value, function (returnedText) { alert(returnedText);});"/>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多