gpt4 book ai didi

javascript - Ajax不返回任何结果

转载 作者:行者123 更新时间:2023-12-03 07:04:29 25 4
gpt4 key购买 nike

我的 Ajax 函数没有返回任何结果

<div id="container">                
<div id="connexion">
<form method="post" action="">
<input type="text" id="login">
<input type="password" id="password"><br />
<input name="Submit" type="submit" id="ok" value="OK" class="btn "><br /><br />
<span id="errormess"></span>
</form >
</div>
</div>
$(document).ready(function(){
$("#ok").click(function() {
var login = $("#login").val();
var password = $("#password").val();
var dataString = 'login='+ login + '&password=' + password;
$.ajax({
type: "POST",
url: 'login.php',
data: dataString,
dataType: "json",
success: function(data) {
if (data == 0) {
$('#errormess').html("problem");
} else {
$('#errormess').html(data);
}
}//success
});//ajax
return false;
});//ok
});//document
$sql = "SELECT * FROM utilisateurs WHERE login ='$login' AND password=$password'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
$userId= $row["id"];
$today=time();
$week=strftime('%W',$today) ;
}
$arr = array(
'userId' => $userId,
'week' => $week,
);
echo json_encode($arr);
}

最佳答案

问题是因为单击按钮是以标准方式提交表单,这意味着您的 AJAX 请求无法完成。更好的做法是 Hook formsubmit 事件。

另请注意,您的 PHP 代码永远不会返回 0,如果 AJAX 未按预期完成,最好有一个 error 处理程序。最后,您当前的代码很容易受到攻击;您应该考虑使用 SSL 并使用准备好的语句来避免 SQL 注入(inject)。

也就是说,这里是针对 AJAX 问题的修复:

<div id="container">                
<div id="connexion">
<form id="myform" method="post" action="">
<input type="text" id="login">
<input type="password" id="password"><br />
<input name="Submit" type="submit" id="ok" value="OK" class="btn "><br /><br />
<span id="errormess"></span>
</form>
</div>
</div>
$("#myform").submit(function(e) {
e.preventDefault(); // stop standard form submission

$.ajax({
type: "POST",
url: 'login.php',
data: {
login: $("#login").val(),
password: $("#password").val()
},
dataType: "json",
success: function(data) {
$('#errormess').html(data);
}
error: function() {
$('#errormess').html("problem");
}
});
});

关于javascript - Ajax不返回任何结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36887165/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com