douzhou7124 2017-06-03 16:11
浏览 56
已采纳

jQuery Ajax函数不起作用?

I'm developing a simple login form for my website. And to do that I thought to use ajax to connect with php to validate users. However to do that I cannot get output from ajax.

<script>
 function submitForLogin() 
 {  
    $.ajax({
            type: "POST",
            url: "php/login.php",
            data: { email: "example@abc.com",password:"123" }}).done(function(data){alert(data);});

 }

</script>

When user clicks on login button it calls submitForLogin() function.

Above part of the code I've placed in my login.html file. To validate whether this works or not I simply replaced data values of email and password with hard coded values.

Note : example@abc.com and 123 both email and password stored in Wamp server database.

This is the PHP file :

<?php
$userEmail=$_POST['email'];
$userPass=$_POST['password'];
$servername ="localhost";
    $username="root";
    $password="";
    $dbname="AS2014459";
    //To create a connection
    $con = mysqli_connect($servername,$username,$password,$dbname); //check connection
    if(!$con){
        die("Connection failed: ".mysqli_connect_error());
    }   
    $sql="SELECT Email,Password FROM USERTABLE WHERE Email='".$userEmail."'";
    $results=mysqli_query($con,$sql);
    if(mysqli_num_rows($results)>0)
    {
        echo "userExist";
    }
    else
    {
        echo "fakeUser";
    }
    mysqli_close($con);



?>

Whenever I run php file only (with $userEmail and $userPass having previous hard coded values) php prints userExist output. But using ajax I cannot get that in an alert box.

Is there something I missing? I'm running the website in wamp server too.

UPDATE

When I check console errors it shows;

enter image description here

And when I click on login.html line 112, it shows;

enter image description here

And ideas guys? Also, none of the solutions provided so far gave me successful answer for the question.

There was a jquery error and now it's fixed. But syntax error exists.

  • 写回答

4条回答 默认 最新

  • douzhang8840 2017-06-03 16:31
    关注

    Try this code working for me on my machine. Don't forgot to place Jquery File. PHP (ajax.php) :

    <html>
    <head>
        <script src="jquery.min.js"></script>
        <script>
            function submitForLogin() 
     {
            alert("23");
            var email = document.getElementById("txtUserName").value;
            var password = document.getElementById("txtPassword").value;
        $.ajax({
                type: "POST",
                url: "login1.php",
                data: { email: email,password:password },
                success : function(response){
                    alert(response);
                }
       });
    
     }
    
        </script>
    </head>
    <body>
        <input type="text" placeholder = "Enter user name" id="txtUserName"/>
        <input type="password" placeholder = "Enter password" id="txtPassword"/><br>
        <input type="button" onclick="submitForLogin();" value="Login"/>
    </body>
    </html>
    

    Server Side (login1.php) :

        <?php
    var_dump($_POST);
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 idea自动补全键位冲突
  • ¥15 iis10中如何阻止别人网站重定向到我的网站
  • ¥15 滑块验证码移动速度不一致问题
  • ¥15 定制ai直播实时换脸软件
  • ¥100 栈回溯相关,模块加载后KiExceptionDispatch无法正常回溯了
  • ¥15 Utunbu中vscode下cern root工作台中写的程序root的头文件无法包含
  • ¥15 麒麟V10桌面版SP1如何配置bonding
  • ¥15 Marscode IDE 如何预览新建的 HTML 文件
  • ¥15 K8S部署二进制集群过程中calico一直报错
  • ¥15 java python或者任何一种编程语言复刻一个网页