2017-03-03 112 views
0

我正在开发一个使用Phonegap的应用程序,现在我正在创建登录页面。每当我尝试点击提交按钮,什么都不会发生。这是我的代码。Ajax调用不工作(Phonegap,Mysql,PHP)

的index.html

<link href="css/style.css" rel="stylesheet" type="text/css" media="all" /> 
<script src="js/jquery.min.js"></script> 
<script src="js/login.js"></script> 
<link href='//fonts.googleapis.com/css?family=Droid+Serif:400,400italic,700,700italic' rel='stylesheet' type='text/css'> 
<!--<script> 

</script>--> 
</head> 

<body> 
    <div class="main-info2"> 
     <h3>Sign In</h3> 
      <div class="in-form"> 
       <form id="login_form" method="post"> 
        <input type="text" placeholder="Username" required=" " id="email" /> 
        <input type="password" placeholder="Password" required=" " id="password" /> 
       </form> 
       <div class="check-sub"> 
        <input type="submit" value="Login" id="login"> 
       </div> 
      </div> 
     </div> 
     <div class="copy-right"> 
      <p>Design by <a href="http://w3layouts.com">W3layouts</a></p> 
     </div> 
    </div> 
    <!-- //main --> 

login.js

$(document).ready(function(){ 
    do_login(); 
}); 

function do_login() { 
    //$("#login").click(function() { 
     var email = $('#email').val(); 
     var password = $('#password').val(); 
     var data = $("#login_form").serialize(); 

     if(email != "" && password != ""){ 
      $.ajax({ 
       type: 'post', 
       url: 'https://localhost:1234/cleverpro/login.php', 
       data: data, 
       success: function(response){ 
        if(response == "success"){ 
         console.log("yehey!"); 
         window.location.href = "welcome.html"; 
        }else{ 
         alert("sayup uy"); 
        } 
       } 
      }); 
     }else{ 
      alert("Please fill in "); 
     } 
    //}); 
    return false; 
} 

的login.php

<?php 

    session_start(); 

    if(isset($_POST['login'])){ 
     $host = "localhost"; 
     $username = "root"; 
     $password = ""; 
     $dbname = "cleverpro"; 
     $connect = mysql_connect($host,$username,$password); 
     $db = mysql_select_db($dbname); 


     $email = $_POST['email']; 
     $pass = $_POST['password']; 

     $sql = "SELECT * FROM user WHERE email='$email'"; 

     $recordset=mysqli_query($connect, $sql) or die("database error:".mysqli_error($connect)); 

     /*if($row=mysql_fetch_array($select_data)){ 
      $_SESSION['email']=$row['email']; 
      echo "success"; 
     }else{ 
      echo "fail"; 
     } 
     exit();*/ 

     $row = mysqli_fetch_assoc($recordset); 

     if($row['password'] == $pass) { 
      echo "success"; 
      $_SESSION['user_session'] = $row['id'] 
     }else{ 
      echo "fail"; 
     } 
    } 

?> 

我不知道是哪个PA rt是错误的。你能帮助我吗?提前致谢。

回答

0

您的提交按钮超出了<form>标记的范围。

请更改表单标签如下

<form id="login_form" method="post"> 
     <input type="text" placeholder="Username" required=" " id="email" /> 
     <input type="password" placeholder="Password" required=" " id="password" /> 
     <div class="check-sub"> 
     <input type="submit" value="Login" id="login"> 
     </div> 
</form> 
+0

哦,是的。我没有注意到。我更改了代码后,按钮已经工作,但显示了这样的东西 - 无法POST / –