ホームページ > バックエンド開発 > PHPチュートリアル > Ajax が登録ページで重複するユーザー名をチェックする問題を解決するにはどうすればよいですか?

Ajax が登録ページで重複するユーザー名をチェックする問題を解決するにはどうすればよいですか?

WBOY
リリース: 2016-06-13 13:48:17
オリジナル
1193 人が閲覧しました

登録ページの Ajax は重複したユーザー名をチェックします
登録ページの Ajax は重複したユーザー名をチェックします

IE は 60 行目でエラーを報告するようになりました: 'null' が空であるか、オブジェクトではありません

上記のコード:

HTML コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->    <script type="text/javascript">
        var xmlHttp;
        function createXMLHTTP()
        {
            if(window.ActiveXObject)
            {
                var browseVersion=["Msxml2.XMLHTTP.6.0","Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP","Microsoft.XMLHTTP"];
                for(var i=0;i<browseVersion.length;i++)
                {
                    xmlHttp=new ActiveXObject(browseVersion[i]);
                }   
            }
            else if(window.XMLHttpRequest)
            {
                xmlHttp=new XMLHttpRequest();
            }
            if (!xmlHttp)
            {
                window.alert("不能创建XMLHttpRequest对象实例!");
                return false;
            }
        }
        function $(id)
        {
            return document.getElementById(id);
        }
        function CheckUserName(obj,Msg)
        {
       
            if(obj.value=="")
            {
                alert( "请输入用户名!")
            }
            else
            { 
                createXMLHTTP();
                var url="chkuser.php?name=" + encodeURIComponent(obj.value);
                xmlHttp.open("GET",url,true);
                xmlHttp.onreadystatechange=IsExistUserName;
                xmlHttp.send(null);
            }
        }
        function IsExistUserName()
        {
            if(xmlHttp.readyState == 4)  /*这是60行*/
            {
                var isValid = xmlHttp.responseText;
                var exsits = document.getElementById("exsits"); 
                exsits.innerHTML = isValid.substring(0,4);
            } 
         }
    </script>    
<table width="400" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#666666">
  <tr>
    <td colspan="2" align="center" bgcolor="#666666" class="STYLE1">增加新用户</td>
  </tr>
    <tr>
    <td width="150" align="right" bgcolor="#FFFFFF">用户名:</td>
    <td width="250" bgcolor="#FFFFFF"><input name="wyx_name" type="text" size="17" onblur="CheckUserName(this,'msg')"/> 
    <font color=red>*</font><label d="exsits"></label></td>
    </tr>
  <tr>
    <td width="150" align="right" bgcolor="#FFFFFF">密码:</td>
    <td width="250" bgcolor="#FFFFFF">
    <input name="wyx_pass1" type="password" size="18"/> <font color=red>*</font></td>
  </tr>
  <tr>
    <td width="150" align="right" bgcolor="#FFFFFF">重复密码:</td>
    <td width="250" bgcolor="#FFFFFF">
    <input name="wyx_pass2" type="password" size="18"/> <font color=red>*</font></td>
  </tr>
  <tr>
    <td colspan="2" align="center" bgcolor="#FFFFFF"><input type="submit" name="submit" value="提交" /></td>
  </tr>
</table>

ログイン後にコピー


これは chkuser.php ページのコードです:

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--><?php
include('chek.php');
include('../config.php');
$name = $_GET[name];
$sql="SELECT * FROM wyx_user WHERE wyx_name='$name'";
$sql=@mysql_query($sql)
if($rs=mysql_fetch_array($sql))
{
    echo "用户名已存在";
}
else
{
    echo "可以注册";
}

?>
ログイン後にコピー


-----解決策---------
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート