2013-03-03 180 views
0

我正在嘗試使用AJAX和PHP創建登錄,以顯示更平滑的錯誤消息。使用AJAX和PHP登錄

我的HTML

我的javascript:

$('#submitLogin').click(function() 
{ 
    var email = $('#loginMail').val(); 
    var pass = $('#pass').val(); 
    $.post('login.php', 
     {email: email, pass: pass}, 
     function(data) 
     { 
      alert(data); 
     }); 
}); 

我的PHP

<?php 
include('database.php'); 
$pdo = new database(); 

$email = $_POST['email']; 
$pass = md5($_POST['pass']); 
#$email = 'web.de'; 
#$pass = 'pw'; 

$qry = $pdo->pdo->prepare("SELECT * FROM userbasics WHERE email = :email AND pass =  :pass"); 
$qry->bindParam(':email', $email); 
$qry->bindParam(':pass', $pass); 
$qry->execute(); 
#$result = $qry->fetchAll(); 
$count = $qry->rowCount(); 

if($count == 1){ 
    echo "Eingeloggt!"; 
    header("Location: http://www.google.de"); 
} 
else{ 
    echo "E-Mailadresse oder Passwort falsch!"; 
} 

/*foreach($result as $row){ 
    echo $row['email']; 
}*/ 

?> 

當我打電話的PHP腳本與定義的數據返回我是什麼應該做。所以我想這是Javascript-Part中的一個問題。有什麼建議麼?

在PHP

if($count == 1){ 
echo "Eingeloggt!"; 
header("Location: http://www.google.de"); 
} 
else{ 
    echo "E-Mailadresse oder Passwort falsch!"; 
} 

+0

你使用過瀏覽器嗎?工具來觀察POST請求和響應? – juco 2013-03-03 16:21:50

+1

在Web瀏覽器中打開Web開發者控制檯,突出顯示所有Javascript問題。 – Anonymous 2013-03-03 16:21:58

+0

您在回覆內容後無法修改標題信息。 – 11684 2013-03-03 16:22:15

回答

0

更改下面的代碼

if($count == 1){ 
echo "Eingeloggt!"; 
} else{ 
    echo "E-Mailadresse oder Passwort falsch!"; 
} 
exit; 
0

你的代碼 -

if($count == 1){ 
    echo "Eingeloggt!"; 
    header("Location: http://www.google.de"); 
} 

是錯的...你不能echo後設置頭荷蘭國際集團的東西。當你將用戶重定向到一個頁面時,爲什麼你想要echo那件事?好吧,如果你想,如果重定向失敗,則該頁面不應該是空白的,它應該顯示一些消息,然後再嘗試這一點 -

if($count == 1){ 
    header("Location: http://www.google.de"); 
    exit("Eingeloggt!"); 
} 

好了jQuery的一部分,我看不出有什麼錯。

而且,由於你沒有submit ing形式的任何地方你只是post通過Ajax荷蘭國際集團它,設置form

<form action="javascript:void(0);" onsubmit="return false;"> 

我希望幫助。

+0

我改變了它,現在它不會重新加載頁面,但仍然不會回顯任何內容。 – loomie 2013-03-03 17:02:59

+0

我相信'onsubmit =「返回false;」'是首選的方法,而不是'action =「...」''。 – 11684 2013-03-04 13:42:33