<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
    <title>用户注册 </title>    <link href="../css/styles.css" rel="stylesheet" type="text/css" media="all"/>    <script type="text/javascript" src="../js/jquery.min.js"></script>
</head>
<body><div class="message warning">
    <div class="inset">
        <div class="login-head">
            <h1>用户注册</h1>            <div class="alert-close"></div>
        </div>        <form method="post" action="zuce.php">
            <ul>
                <li><input type="text" class="text" name="username" value="用户名" id="name"></li>
                <li id="tishi1"></li>
                <li><input type="password" name="password" value=""/> <a href="#" class="icon lock"></a></li>
                <li><input type="password" name="rpwd" value=""/> <a href="#" class="icon lock"></a></li>
            </ul>            <div class="submit">
                <input type="submit"  value="注册">
                <h4><a href="#">忘记密码?</a></h4>                <div class="clear"></div>
            </div>
        </form>
    </div>
</div><!--- footer --->
<div class="footer">
    <p>Copyright &copy; 2010-2016.<a href="http://localhost/myblog/index.php">我的网站</a></p>
</div><script>
    document.getElementById('name').onblur=function(){
        var request=new XMLHttpRequest() ;
        request.open('get','zuce.php?action=checkname&name='+document.getElementById('name').value);
        request.send();
        request.onreadystatechange=function(){
                if(request.readyState==4&& request.status==200){
                    var text=request.responseText;
                    alert(text);
                }
            }
      }
</script>
</body>
</html>
php代码如下
<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2016/11/7
 * Time: 9:48
 */
$db = new pdo('mysql:host=localhost;dbname=lol', 'root') or die('connet failed');if ($db) {
    $db->exec('set names utf8');
}
include_once 'reg.html';
$action = isset($_GET['action']) ? $_GET['action'] : '';
if ($_POST) {
    $username = $_POST['username'];
    $sq = "select * from zc WHERE yh='$username'";
    $sql = $db->query($sq)->fetch();
    if ($sql) {
        echo "<script>alert('用户名重复')</script>";
    } else {
        $pass = $_POST['password'];
        $rpass = $_POST['rpwd'];
        if (empty($pass)) {
            echo "<script>alert('密码不能为空')</script>";
        } else {
            if ($pass == $rpass) {
                $tjl = "insert into zc (id,yh,password,rpassword)VALUES (null,'$username','$pass','$rpass')";
                $tj = $db->exec($tjl);
                if ($tj) {                    echo "<script>alert('注册成功');location.href='../../dengru.php';</script>";
                } else {
                    echo "<script>alert('注册失败')</script>";
                }
            } else {
                echo "<script>alert('两次密码输入不一致')</script>";
            }
        }
    }
} elseif ($action == 'checkname') {
    $name = $_GET['name'];
    $sq = "select * from zc WHERE yh='$name'";
    $sql = $db->query($sq)->fetch();
    if ($sql) {
        echo "存在";
    } else {
        echo "不存在";
    }
}

解决方案 »

  1.   


                        echo "<script>alert('注册成功');location.href='../../dengru.php';</script>";
                    } else {
                        echo "<script>alert('注册失败')</script>";
                    }
                } else {
                    echo "<script>alert('两次密码输入不一致')</script>";
    php 不应该写这些的,应该直接输出内容,例如json格式。
      

  2.   

    我就算把elseif ($action == 'checkname') {
        $name = $_GET['name'];
        $sq = "select * from zc WHERE yh='$name'";
        $sql = $db->query($sq)->fetch();
        if ($sql) {
            echo "存在";
        } else {
            echo "不存在";
        }
    }
    去掉,然后html  network 里面返回的值也是一整个html的代码 劳烦大神帮帮忙
      

  3.   

    你的 zuce.php 是什么内容?
      

  4.   

    Php代码和html代码放在同一文件,如果没有代码限制html的显示,html代码就会返回。最好把php和html分开
      

  5.   

    如果是ajax调用,最好是返回json格式。