2013-03-03 85 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