0

コアphpを使用してログインフォームを作成しましたが、問題があり、ajax応答で2つ入力するため、条件が適切に一致せず、ログインフォームが機能しません。

私のHTML:

<div id="block">
   <form method="post" name="form">
        <ul>
          <li>Usename:</li>
          <li><input id="email" type="text"  name="un" size="25" required  placeholder="Email"  ></li>
        </ul>
        <ul>
          <li>Password:</li>
          <li><input id="password" type="password" name="up" size="25"></li>
          <li><input type="button" name="submit" value="LOGIN" onClick="rr();"></li>
       </ul>
   </form>
  </div>

私のjs:

function rr()
{
var data={
        'un':$('#email').val(),
        'up':$('#password').val()

    }

    $.ajax({
        type:"POST",
        data:data,
        dataType:"text",
        url:"/panchayat/web/action.php?action=login",
        success:function(response)
        {
            if(response=='true')
            {
                window.location.assign("home.html");
            }
            else
            {
                alert("wrong credencials");
            }
        },
        failure:function(response)
        {
            alert("there is an error.");
        },      
        error:function(xhr, status, error)
        {
          alert("xhr.response");    
        }

        });
}

私のphp:

function login()
    {
        $q=mysql_query("select * from tb_login");
        $ft=mysql_fetch_array($q);
        $_SESSION['emailid']=$_REQUEST["un"];
        $_SESSION['pass']=$_REQUEST["up"];
        if($_REQUEST["un"]==$ft["Emailid"] && $_REQUEST["up"]==$ft["Password"])
        {
            $n="true";
        }
        else
        {           
            $n="WRONG USERNAME OR PASSWORD";
        }
        echo $n;
    }

成功部分の条件が一致しないように、応答に 'true' を含む 2 つのエンターが付属しています。これらのエンターを取り除くのを手伝ってください。

4

1 に答える 1

1

$.trim()responseを使用してスペースを削除しようとすることができます

if($.trim(response)=='true')
于 2013-08-29T12:32:30.647 に答える