Php 用户名检查页面

Php 用户名检查页面,php,javascript,ajax,mysqli,Php,Javascript,Ajax,Mysqli,我正在创建一个系统来检查(通过AJAX)给定的用户名是否已经被使用。如果是,则会相应地提醒用户。我将我的系统建立在教程的基础上,并尝试将其适应我的网站 $(document).ready(function()//When the dom is ready { $("#username").change(function() { //if theres a change in the username textbox var username = $("#username").v

我正在创建一个系统来检查(通过AJAX)给定的用户名是否已经被使用。如果是,则会相应地提醒用户。我将我的系统建立在教程的基础上,并尝试将其适应我的网站

$(document).ready(function()//When the dom is ready
{
  $("#username").change(function()
  { //if theres a change in the username textbox

    var username = $("#username").val();//Get the value in the username textbox
    if(username.length > 3)//if the lenght greater than 3 characters
    {
      $("#availability_status").html('<img src="loader.gif" align="absmiddle">&nbsp;Checking availability...');
      //Add a loading image in the span id="availability_status"

      $.ajax({  //Make the Ajax Request
        type: "POST",
        url: "ajax_check_username.php",  //file name
        data: "username="+ username,  //data
        success: function(server_response){

          $("#availability_status").ajaxComplete(function(event, request){

            if(server_response == '0')//if ajax_check_username.php return value "0"
            {
              $("#availability_status").html('<img src="available.png" align="absmiddle"> <font color="Green"> Available </font>  ');
              //add this image to the span with id "availability_status"
            }
            else  if(server_response == '1')//if it returns "1"
            {
              $("#availability_status").html('<img src="not_available.png" align="absmiddle"> <font color="red">Not Available </font>');
            }

          });
        }

      });

    }
    else
    {

      $("#availability_status").html('<font color="#cc0000">Username too short</font>');
      //if in case the username is less than or equal 3 characters only
    }
    return false;
  });
});
$(document).ready(function()//当dom就绪时
{
$(“#用户名”).change(函数()
{//如果用户名文本框中有更改
var username=$(“#username”).val();//获取用户名文本框中的值
if(username.length>3)//如果长度大于3个字符
{
$(“#可用性_状态”).html(‘检查可用性…’);
//在span id=“可用性\u状态”中添加加载映像
$.ajax({//发出ajax请求
类型:“POST”,
url:“ajax\u check\u username.php”//文件名
数据:“username=“+username,//数据
成功:功能(服务器响应){
$(“可用性状态”).ajaxComplete(功能(事件、请求){
if(server\u response=='0')//if ajax\u check\u username.php返回值“0”
{
$(“#可用性状态”).html('Available');
//将此映像添加到id为“availability\u status”的范围中
}
else if(server_response=='1')//如果返回“1”
{
$(“#可用性_状态”).html(‘不可用’);
}
});
}
});
}
其他的
{
$(“#可用性_状态”).html('用户名太短');
//如果用户名仅少于或等于3个字符
}
返回false;
});
});
ajax\u check\u username.php-我认为我遇到了问题

<?php
include ("inc/db/db.php");

if($stmt = $mysqli->prepare('SELECT NULL FROM `bruger` WHERE `brugernavn` = ?'))
{
  $stmt->bind_param('s', $brugernavn);
  $brugernavn = $_POST["brugernavn"];
  $stmt->execute();
  $stmt->store_result();
  $count = $stmt->num_rows;
  $stmt->close();
  if($count = 0)
  {
    echo '1';
  }
  else
  {
    echo '2';
  }
}
?>


<tr>
  <td><p>Brugernavn</p></td>
  <td><input type="text" name="brugernavn" id="username"></td>
  <td><span id="availability_status"></span></td>
</tr>

布鲁格纳文

注意 我认为我在php中犯了错误,所以这可能就是为什么它不费心去做我想做的事情。。但这正是我思考的时候

当我需要检查数据库中的用户名时,这就是我的html所寻找的。这就是我完全没有错误的原因。必须说,我以前从未使用过ajax或javascript。如果你能进一步帮助我,那将是一个很大的帮助


如果($count=0)这个
如果($count==0)
应该是
如果($count==0)
如果这会影响你的逻辑。

你在使用它之后分配了
$brugernavn

$stmt->bind_param('s', $brugernavn);
$brugernavn = $_POST["brugernavn"];

在以下情况下,使用ajaxComplete是没有用的:

$("#availability_status").ajaxComplete(function(event, request){

您正在指定要比较的位置:

if($count = 0)


你的Javascript需要一个
0
1
,但是你的PHP脚本输出了
1
2

请花些时间来正确设置你的问题的格式,这是一个混乱…抱歉。下一次我会做得更好,下次当我将aI设置为0和1时,我可能会花更多的时间,但是关于php在哪里使用,我该怎么做呢?