我正在使用 PHP + jQuery AJAX 将用户登录到我的网站。 PHP 连接到数据库,jquery 连接到 PHP 文件,在实际登录之前一切正常。当我输入用户名和密码时,文件返回错误。大约一周前我开始工作了,但是我正在做一些代码清理,我不小心删除了执行登录的脚本,现在我无法让它工作。这是我的 PHP 文件:
<?php
include('.conf.php');
$user = $_POST['user'];
$pass = $_POST['pass'];
$result = mysql_query("SELECT * FROM accountController WHERE username = '$user'");while ($row = mysql_fetch_array($result)) {
if (sha1($user.$pass) == $row['pword']) {
setcookie('temp', $row['username']);
session_start();
$_SESSION['login'] = 1;
$_SESSION['uname'] = $row['username'];
echo "success";
}
}
?>
我相信 PHP 文件正在回应正确的声明,是的,数据库中的密码是 sha1 加密的。这是 jquery 代码:
$('.mainlogin').submit(function() {
$.ajax({
url: 'log.php',
type: 'POST',
data: {
user: username,
pass: password
},
success: function(response) {
if(response == 'success') {
window.location.reload();
} else {
$('.logerror').fadeIn(250);
}
}
});
return false;
});
感谢大家的帮助!
编辑:我不确定现在出了什么问题,但无论我尝试什么,它都不会让我登录。我已经更正了你们在下面建议的所有内容,但无济于事。我的 PHP 文件中可能有什么问题吗?
最佳答案
试试这个:
$('.mainlogin').submit(function() {
$.ajax({
url: 'log.php',
type: 'POST',
data: {
username: username,
password:password
},
success: function(response) {
if(response == 'success') {
window.location.reload();
} else {
$('.logerror').fadeIn(250);
}
}
});
return false;
});
或更改数据参数
data: 'username='+username+'&password='+password
并使用&!!!!
关于php - JQuery AJAX + PHP 登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9023699/