【发布时间】:2020-07-02 07:06:58
【问题描述】:
我在 Firefox 和 Chrome 上使用相同的代码时遇到了一个非常奇怪的行为。 如果我使用 Chrome 一切正常。如果我使用 Firefox,我会遇到奇怪的问题。 让我解释一下我认为问题所在的代码的相关部分:
下面的部分代码让我通过一个工具按钮在 mysql db 中进行某些操作。
有什么问题吗? 我注意到,如果我不使用 location.reload() Firefox 会像方面一样工作,但是每次我进行更改时我都必须通过 F5 主页重新加载。不是一个好主意。 让我知道。 问候
$('.inServizio').change(function() {
if($(this).prop('checked')) {
$.post("./reset_stato.php", {ruolo: $(this).prop('name')});
$.post("./update_stato.php",{stato: "SI", scheda_id:
$(this).prop('value')});
location.reload();
return;
} else {
$.post("./update_stato.php", {stato: "NO", scheda_id: $(this).prop('value')});
location.reload();
return;
}
});
//这里有:
<?php
$conn = new mysqli("localhost","username","password","database");
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$stato = $conn->real_escape_string($_POST['stato']);
$scheda_id = $conn->real_escape_string($_POST['scheda_id']);
$sql = "UPDATE reperibili SET rep_onoff='$stato' WHERE id='$scheda_id'";
if ($conn->query($sql)) {
exit;
} else {
exit;
}
$conn->close();
?>
//这里reset_stato.php
<?php
$conn = new mysqli("localhost","username","password","database");
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$ruolo = $conn->real_escape_string($_POST['ruolo']);
$rows = "SELECT * FROM reperibili ORDER BY id DESC";
if ($result = mysqli_query($conn,$rows)) {
$rowcount = mysqli_num_rows($result);
if($rowcount > 0) {
if($ruolo == 'FESTIVO') {
$sql = "UPDATE reperibili SET rep_onoff='NO' WHERE rep_role='FESTIVO'";
mysqli_query($conn, $sql);
exit;
} elseif ($ruolo == 'FUORI_ORARIO') {
$sql = "UPDATE reperibili SET rep_onoff='NO' WHERE rep_role='FUORI_ORARIO'";
mysqli_query($conn, $sql);
exit;
}
};
}
$conn->close();
?>
【问题讨论】:
-
这些 AJAX 请求是异步的,但您重新加载页面完全独立于它们是否已经完成。当您导航到新页面或重新加载当前页面时,浏览器通常会取消任何此类挂起的后台请求。
-
了解 sql 注入以及准备和绑定查询的重要性
-
^^ 让我给你介绍my friend Bobby。
-
un consiglio ENORME sviluppa i tuoi software in inglese soprattutto se poi hai bisogno di chiedere aiuto - 一个巨大的建议:如果您需要寻求建议,特别是用英语开发您的软件
标签: javascript php html jquery mysql