제출 후 백그라운드에서는 $name=I('name') 및 $pw=I('pw')를 통해 데이터를 수신하지만 에코가 나온 후에는 정의되지 않음이 표시됩니다. 반환되는 값은 항상 0입니다. 코드의 Ajax 부분인가요? 그런데 F12로 확인해보니 맞네요
<code><script type="text/javascript"> function ajax(url,data,data2,funsucc){ var oAjax=new XMLHttpRequest(); oAjax.open('post',url,true); oAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8"); oAjax.send("name="+data+"&pw="+data2); oAjax.onreadystatechange=function(){ if(oAjax.readyState==4){ if(oAjax.status==200){ funsucc(oAjax.responseText); } } } } </script> <script type="text/javascript"> window.onload=function(){ var oBtn1=document.getElementById('btn1'); var oName=document.getElementById('name'); var oPw=document.getElementById('pw'); var oDiv5=document.getElementById('div5'); oBtn1.onclick=function(){ oV1=oName.value; oV2=oPw.value; ajax("{:U('login/ajax')}",oV1,oV2,function(str){ oDiv5.innerHTML=str; }); } } </script></code>
<code>public function ajax(){ $user=M('user'); $name=I('name'); $pw=I('pw'); echo $pw; //提示未定义 echo $name; //提示未定义 $res1=$user->where("username='$name' AND password='$pw'")->select(); if($res1){ $res=1; }else{ $res=0; } $this->ajaxReturn($res); }</code>
제출 후 백그라운드에서는 $name=I('name') 및 $pw=I('pw')를 통해 데이터를 수신하지만 에코가 나온 후에는 정의되지 않음이 표시됩니다. 반환되는 값은 항상 0입니다. 코드의 Ajax 부분인가요? 그런데 F12로 확인해보니 맞네요
<code><script type="text/javascript"> function ajax(url,data,data2,funsucc){ var oAjax=new XMLHttpRequest(); oAjax.open('post',url,true); oAjax.setRequestHeader("Content-Type","application/x-www-form-urlencoded;charset=UTF-8"); oAjax.send("name="+data+"&pw="+data2); oAjax.onreadystatechange=function(){ if(oAjax.readyState==4){ if(oAjax.status==200){ funsucc(oAjax.responseText); } } } } </script> <script type="text/javascript"> window.onload=function(){ var oBtn1=document.getElementById('btn1'); var oName=document.getElementById('name'); var oPw=document.getElementById('pw'); var oDiv5=document.getElementById('div5'); oBtn1.onclick=function(){ oV1=oName.value; oV2=oPw.value; ajax("{:U('login/ajax')}",oV1,oV2,function(str){ oDiv5.innerHTML=str; }); } } </script></code>
<code>public function ajax(){ $user=M('user'); $name=I('name'); $pw=I('pw'); echo $pw; //提示未定义 echo $name; //提示未定义 $res1=$user->where("username='$name' AND password='$pw'")->select(); if($res1){ $res=1; }else{ $res=0; } $this->ajaxReturn($res); }</code>
<code> var oName=document.getElementById('name'); var oPw=document.getElementById('pw'); </code>
이 두 데이터를 시험해 보고 개체 할당을 찾을 수 없으면 정의되지 않은 것입니다.
정의되지 않은 것은 js 문제임에 틀림없습니다. 자세한 오류를 게시해 주세요
제출된 양식의 데이터를 확인하세요
ajax("{:U('login/ajax')}",oV1,oV2,function(str){ });
<code> 你这个地方只是把值传进去了,没有定义 name,pw.</code>