好吧,这就是情况。我的php文件中有以下代码块,出于某种原因,无论何时检查数据,它都不接受。我已经打印出了数据的价值,而且确实已被接受了#34; (显然没有引号)。我是否以某种方式比较这些错误?在我的网站的另一部分运行基本完全相同的代码,它工作正常。
$(document).ready(function () {
$("#sign").click(function () {
jQuery.ajax({
url: "loginConfirm.php",
data: { // Correct
username: $("#username").val(),
password: $("#password").val()
},
type: "POST",
success: function (data) {
if ($("#username").val() === "") {
//Do nothin
} else if (data === "accepted") {
alert("Here");
redirectSignIn();
} else {
alert("There");
$("#signInTitle").html(data);
}
},
error: function () {}
});
});
});
编辑:php代码我在下面的网址中调用
<?php
// The global $_POST variable allows you to access the data sent with the POST method
// To access the data sent with the GET method, you can use $_GET
$username = htmlspecialchars($_POST['username']);
$userpassword = htmlspecialchars($_POST['password']);
require_once("dbcontroller.php");
$db_handle = new DBController();
$result = mysql_query("SELECT count(*) FROM loginInfo WHERE userName='" . $username . "' AND password='" . $userpassword . "'");
$row = mysql_fetch_row($result);
$user_count = $row[0];
if($user_count>0)
echo "accepted";
else
echo "denied";
?>
答案 0 :(得分:0)
您无法在成功功能中验证if ($("#username").val() === "") {
。为此,您可以在进行Ajax调用之前对其进行验证。
答案 1 :(得分:0)
我想在这里给出一些建议,首先你必须验证用户的输入,如果验证,那么你可以调用ajax。
然后你不需要在AJAX过程中检查用户名的值。
...一样
if($("#username").val() === "" && $("#passoword").val() === "")
{
//AJAX call
}
else
{
//alert to enter the valid inputs
}
希望你明白我的理念......