qq_40096133
等等我牙疼
采纳率0%
2018-12-19 19:51 阅读 658

利用ajax调用php查询数据库为什么返回data值为php整个文件的字符串

想利用ajax验证用户名在数据库中有无重复,但是ajax调用php后返回data为整个php文件的字符串。
求解
ajax部分:

 $("#username").blur(function () {
        // 取用户名
        var u = $("#username").val();//取输入的用户名
        alert(u);
        //调ajax
        $.ajax({
            url: "checkName.php",
            data: {u: u},//第二个u只是变量,可以随意写,checkName.php里面的u是第一个。
            type: "POST",
            dataType: "TEXT",
            success: function (data) {
                if (data.trim() == "OK")//要加上去空格,防止内容里面有空格引起错误。
                {
                    alert("该用户存在");
                    //window.location.href = "main.php";//js跳转页面,要记住。
                }
                else if(data.trim() == "NO")
                {
                    alert("该用户不存在");
                    //echo("用户名不存在,重新输入用户名或者注册");
                }
                else
                    alert("数据库调用错误"+data);

            }
            });
    });
});

php部分:

<?php
    $uid = $_POST["u"];
    $con = mysql_connect("localhost","root","123");
    if (!$con)
      {
      die('Could not connect: ' . mysql_error());
      }

    mysql_select_db("mywebbase", $con);

    $result = mysql_query("SELECT * FROM web");

    if (mysql_field_len($result) > 0)
    {
        // 输出数据
        echo "OK"
    }
    else
    {
        echo "NO";
    }

    mysql_close($con);
?>
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

4条回答 默认 最新

  • qq_34730277 南宫文凯 2018-12-19 11:53

    返回形式是best64位的流吗?如果不是,肯能要用json转一下,在或者是接受类型有问题,可以从这几个角度去分析

    点赞 评论 复制链接分享
  • xrs12345678 asen888 2018-12-20 02:12

    怎么说呢;一般返回数字好点吧,比如1或者0;返回了php整个文件的字符串?不会的哦,除非你文件报错了,你可在浏览器f12再点击network再点请求一次数据看看返回什么;还有会不会是你echo没终止代码如die呢?

    点赞 评论 复制链接分享
  • maysionmm maysionmm 2018-12-20 03:28

    一般前端ajax请求 都是用的json数据格式,你用的是TEXT?? 后端可以用$this->ajaxReturn 返回

    点赞 评论 复制链接分享
  • h_ming h_ming 2019-01-11 14:13

    请求中dataType用json不要用text

    点赞 评论 复制链接分享

相关推荐