1
我正在使用jQuery做一個基本的登錄系統,它對我來說似乎一切都很好,但我總是在這裏輸入im我的jquery:alert('Error in system');
。jQuery消息驗證程序其工作不正常
但它很奇怪,因爲當我這樣做alert(answer);
其顯示我的所有數據我的$_SESSION['userlogin']
。
有人在那裏明白什麼可能是錯的?
林有這樣的jQuery顯示在登錄表單驗證消息:
$('form').submit(function(){
var login = $(this).serialize() + '&action=login';
$.ajax({
url: 'switch/login.php',
data: login,
type: 'POST',
success: function(answer){
if(answer == 'errorEmpty'){
$('.msg').empty().html('<p class="warning">Informe seu usuário e senha!</p>').fadeIn('slow');
}
else if (answer == 'errorPass'){
$('.msg').empty().html('<p class="error">Error ,wrong pass or username!</p>').fadeIn('slow');
}
else if(answer == 'sucess'){
window.setTimeout(function(){
$(location).attr('href','dashboard.php');
},1000);
}
else{
alert('Error in system');
}
alert(answer);
},
beforeSend: function(){
$('.loginbox h1 img').fadeIn('fast');
},
complete: function(){
$('.loginbox h1 img').fadeOut('slow');
},
error: function(){
alert('Error in system');
}
});
return false;
});
});
然後,我有我的PHP文件:
switch ($action){
case 'login':
$user = $_POST['user'];
$pass = $_POST['pass'];
if(!$user || !$pass){
echo 'errorEmpty';
}else{
$searchUser = $pdo->prepare("SELECT * FROM admins WHERE login=:login AND pass=:pass");
$searchUser->bindValue(":login", $user);
$searchUser->bindValue(":pass", $pass);
$searchUser->execute();
$num_rows = $searchUser->rowCount();
$result = $pesquisaUser->fetch(PDO::FETCH_ASSOC);
if($num_rows>=1){
$_SESSION['userlogin'] = $result;
echo 'sucess';
print_r($_SESSION['userlogin']);
}
else{
echo 'errorPass';
}
}
break;
default:
echo 'Error';
}
您是否嘗試過''echo''echo'''echo'sucess'之後放置'return'語句;返回;'? –
謝謝,它可行,但我真的認爲在這種情況下並不需要。你能給出答案,我可以接受嗎? – OzzC