我有一个简单的 jQuery AJAX 请求,它将用户输入从文本框提交到 PHP 文件。这是它的代码:
$.ajax({
url: url,
type: type,
data: data,
dataType: 'json',
success: function(response){
console.log(response);
}
});
PHP 文件基本上将用户登录。在我将“ dataType: 'json'
”添加到我的 AJAX 请求之前,一切正常。现在,每当我单击提交按钮时,都没有记录。这是我的 PHP 文件:
<?php
include 'dbcon.php';
if ( isset( $_POST['text_login_username'], $_POST['text_login_password'] ) ) {
$loginResult = array();
$dbcon = getConnection();
$userName = mysqli_real_escape_string( $dbcon, $_POST['text_login_username'] );
$password = mysqli_real_escape_string( $dbcon, $_POST['text_login_password'] );
$loginQuery = "SELECT * FROM userData WHERE userName='$userName' AND userPassword='$password'";
$queryResult = mysqli_query( $dbcon, $loginQuery );
$legalRows = mysqli_num_rows( $result );
if ( $legalRows == 1 ) {
$loginResult['allClear']=0;
} else {
$loginResult['allClear']=1;
}
echo json_encode( $loginResult );
}
?>
AJAX 文件
$(document).ready(function(){
$('form.loginSubmit').on('submit',function(){
var that = $(this),
url=that.attr('action'),
type=that.attr('method'),
data={};
that.find('[name]').each(function(index,value){
var that=$(this),
name=that.attr('name');
value=that.val();
data[name]=value;
});
$.ajax({
url: url,
type: type,
data: data,
contenType:'application/json; charset=utf-8',
dataType:'json',
success: function(response){
console.log(response);
},
error: function(error)
{
console.log("test");
}
});
return false;
});
});
我可以确保正确设置了文件、帖子等的正确链接,因为这在我尝试发送json_encode
变量之前有效。任何帮助将非常感激!
谢谢!
~地毯嘶嘶声
更新:我error:
在我的 AJAX 调用中添加了一个设置,它在我提交时运行。
更新:查看我的答案。这就是我的解决方案。