php Ajax 无法登陆
无法注册,不能弹出注册成功的窗口,数据库没有增加新用户,
register.php
<table border="0" align="center" cellpadding="0" cellspacing="0"> <tr><td><p>注册名称:</p></td><td><input id="regname" name="regname" type="text" class="txt" /></td><td><div id="namediv" class="regdiv"> 名称由字母及下划线组成</div></td></tr> <tr><td><p>注册密码:</p></td><td><input id="regpwd1" name="regpwd1" type="password" class="txt" /></td><td><div id="pwddiv1" class="regdiv"> 请输入密码</div></td></tr> <tr><td><p>确认密码:</td><td><input id="regpwd2" name="regpwd2" type="password" class="txt" /></td><td><div id="pwddiv2" class="regdiv"> 确认密码</div></td></tr> <tr><td colspan="3"><a id="morebtn">更多.......</a><input id="chknm" name="chknm" type="hidden" value="" /></td></tr> </table> <div id="morediv" style="display:none;padding:0 0 0 57px;"> <hr /> <table border="0" cellpadding="0" cellspacing="0" id="regfm"> <tr><td style="width:70px;">密保问题:</td><td><input id="question" name="question" type="text" /></td></tr> <tr><td>密保答案:</td><td><input id="answer" name="answer" type="text" /></td></tr> <tr><td>电子邮件:</td><td><input type="text" name="xuehao" id="xuehao" /></td></tr> <tr><td>QQ号码:</td><td><input type="text" name="xuehao" id="xuehao" /></td></tr> <tr><td>手机号码:</td><td><input type="text" name="xuehao" id="xuehao" /></td></tr> <tr><td>真实姓名:</td><td><input type="text" name="relname" id="relname" /></td></tr> <tr><td>河海学号:</td><td><input type="text" name="xuehao" id="xuehao" /></td></tr> <tr><td style="height:40px;">性别:</td><td> <select id="sex" name="sex"> <option value='男' selected="selected">男</option> <option value='女'>女</option> </select></td></tr> <tr><td style="height:40px;">出生日期:</td><td> <select id='year' name='year' style="width:70px;"> <option value="<?php echo date('Y'); ?>" selected="selected"><?php echo date('Y'); ?></option> <?php for($i=1900;$i<2024;$i++){ ?> <option value="<?php echo $i; ?>"><?php echo $i; ?></option> <?php } ?> </select> 年 <select id="month" name="month"> <?php for($i=1;$i<=12;$i++){ ?> <option value="<?php echo $i; ?>"><?php echo $i; ?></option> <?php } ?> </select> 月 <select id="day" name="day"> <?php for($i=1;$i<=31;$i++){ ?> <option value="<?php echo $i; ?>"><?php echo $i; ?></option> <?php } ?> </select> 日 </td></tr> </table>
register.js
// JavaScript Documentfunction $(id){ return document.getElementById(id);}window.onload = function(){ $('regname').focus(); var cname1,cname2,cpwd1,cpwd2; //验证用户名 $('regname').onkeyup = function (){ name = $('regname').value; cname2 = ''; if(name.match(/^[a-zA-Z_]*/) == ''){ $('namediv').innerHTML = '<font color=red>必须以字母和下划线开头</font>'; cname1 = ''; }else if(name.length <= 3){ $('namediv').innerHTML = '<font color=red>注册名称必须大于三位</font>'; cname1 = ''; }else{ $('namediv').innerHTML = '<font color=green>注册名称符合标准</font>'; cname1 = 'yes'; } chkreg(); } $('regname').onblur = function(){ name = $('regname').value; if(cname1 == 'yes'){ xmlhttp.open('get','chkname.php?name='+name,true); xmlhttp.onreadystatechange = function(){ if(xmlhttp.readyState == 4){ if(xmlhttp.status == 200){ var msg = xmlhttp.responseText; if(msg == '1'){ $('namediv').innerHTML="<font color=green>用户名可以使用!</font>"; cname2 = 'yes'; }else if(msg == '2'){ $('namediv').innerHTML="<font color=red>用户名被占用!</font>"; cname2 = ''; }else{ $('namediv').innerHTML="<font color=red>"+msg+"</font>"; cname2 = ''; } } } } xmlhttp.send(null); chkreg(); } } $('regpwd1').onkeyup = function(){ pwd = $('regpwd1').value; pwd2 = $('regpwd2').value; if(pwd.length < 6){ $('pwddiv1').innerHTML = '<font color=red>密码最少需6位!</font>'; cpwd1 = ''; }else if(pwd.length >= 6 && pwd.length < 12){ $('pwddiv1').innerHTML = '<font color=green>密码符合要求。密码强度:弱</font>'; cpwd1 = 'yes'; }else if((pwd.match(/^[0-9]*$/)!=null) || (pwd.match(/^[a-zA-Z]*$/) != null )){ $('pwddiv1').innerHTML = '<font color=green>密码符合要求。密码强度:中</font>'; cpwd1 = 'yes'; }else{ $('pwddiv1').innerHTML = '<font color=green>密码符合要求。密码强度:强</font>'; cpwd1 = 'yes'; } if(pwd2 != '' && pwd != pwd2){ $('pwddiv2').innerHTML = '<font color=red>两次密码不一致</font>'; cpwd2 = ''; }else if(pwd2 != '' && pwd == pwd2){ $('pwddiv2').innerHTML = '<font color=green>密码输入正确</font>'; cpwd2 = 'yes'; } chkreg(); } $('regpwd2').onkeyup = function(){ pwd1 = $('regpwd1').value; pwd2 = $('regpwd2').value; if(pwd1 != pwd2){ $('pwddiv2').innerHTML = '<font color=red>两次密码不一致!</font>'; cpwd2 = ''; }else{ $('pwddiv2').innerHTML = '<font color=green>密码输入正确!</font>'; cpwd2 = 'yes'; } chkreg(); } function chkreg(){ if((cname1 == 'yes') && (cname2 == 'yes') && (cpwd1 == 'yes') && (cpwd2 == 'yes')){ $('regbtn').disabled = false; }else{ $('regbtn').disabled = true; } } $('morebtn').onclick = function(){ if($('morediv').style.display == ''){ $('morediv').style.display = 'none'; }else{ $('morediv').style.display = ''; } } //正式注册 $('regbtn').onclick = function(){ name = $('regname').value; pwd = $('regpwd1').value; question1 = $('question').value; answer1 = $('answer').value; realname1 = $('realname').value; xuehao1 = $('xuehao').value; email1 = $('email').value; qq1 = $('qq').value; tel1 = $('tel').value; sex1 = $('sex').value; birthday1 = $('year').value+'-'+$('month').value+'-'+$('day').value; url = 'register_chk.php?name='+name+'&pwd='+pwd; url += '&question='+question1+'&answer='+answer1+'&email='+email1; url += '&qq='+qq1+'&tel='+tel1; url += '&realname='+realname1+'&xuehao='+xuehao1+'&sex='+sex1+'&birthday='+birthday1; xmlhttp.open('get',url,true); xmlhttp.onreadystatechange = function(){ if(xmlhttp.readyState == 4){ if(xmlhttp.status == 200){ msg = xmlhttp.responseText; if(msg == '1'){ top.opener.location.reload(); alert('注册成功!'); location='yhzx.php'; }else{ alert(msg); } } } } xmlhttp.send(null); }}
register_chk.php
<?php session_start(); header('Content-Type:text/html;charset=utf-8'); include_once 'conn/conn.php'; include_once '../config.php'; $reback = '0'; //echo $_GET['headgif']; $sql = "insert into tb_users(name,pwd,question,answer,realname,xuehao,sex,tel,email,qq,birthday) values('".trim($_GET['name'])."','".md5(trim($_GET['pwd']))."','".$_GET['question']."','".$_GET['answer']."','".$_GET['realname']."','".$_GET['xuehao']."','".$_GET['sex']."','".$_GET['tel']."','".$_GET['email']."','".$_GET['qq']."','".$_GET['birthday'].'")"; $num = $conne->uidRst($sql); if($num == 1){ $_SESSION['name'] = $_GET['name']; $reback = '1'; }else{ $reback = $conne->msg_error(); } echo $reback;?>
chk_name.php
<?phpsession_start();include_once "conn/conn.php";$reback = '0';$sql = "select * from tb_member where name='".$_GET['name']."'";$num = $conne->getRowsNum($sql);if($num == 1){ $reback = '2';}else if($num == 0){ $reback = '1';}else{ $reback = $conne->msg_error();}echo $reback;?>
回复讨论(解决方案)
代码太多,先告诉我们 提交上去的数据是否正确 返回结果又是什么?
你真实够可以的,连代码都不给全,怎么帮你查错?
我靠,js啊
我是来学习的
解决问题自己不急 你当比人来给你急啊 代码都不全 我擦
你可以直接抛开 ajax 先用php注册看能不能成功 在看下js发的数据是不是完整和对的
找不出毛病,就怪我代码没给全,我才擦呢,再也不来了,一堆没耐心的家伙,态度越来越差了,什么东西都没解答出来吃干饭,恶心死了。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제









Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

PHP 로깅은 웹 애플리케이션을 모니터링하고 디버깅하고 중요한 이벤트, 오류 및 런타임 동작을 캡처하는 데 필수적입니다. 시스템 성능에 대한 귀중한 통찰력을 제공하고 문제를 식별하며 더 빠른 문제 해결을 지원합니다.

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> 'Hello World', 'github.com'=> [ 'foo'=> 'bar'], 'forge.laravel.com'=>

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

기사는 PHP 5.3에 도입 된 PHP의 LSB (Late STATIC BING)에 대해 논의하여 정적 방법의 런타임 해상도가보다 유연한 상속을 요구할 수있게한다. LSB의 실제 응용 프로그램 및 잠재적 성능

이 기사에서는 프레임 워크에 사용자 정의 기능 추가, 아키텍처 이해, 확장 지점 식별 및 통합 및 디버깅을위한 모범 사례에 중점을 둡니다.

Alipay PHP ...
