我想将数据从一个页面传递到另一个页面。我试过下面的代码。 result_display.php总是给我一个空的_POST数组。如果有人能指出我错在哪里,我会很感激。感谢。
的index.php
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<title>js save session</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
<body>
<input type="submit" id="mybutton" value="My Button">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(document).ready(function () {
$("#mybutton").click(function () {
$.ajax({
method: "POST",
url: "./result_display.php",
data: {name: "John", location: "Boston"}
})
.done(function (msg) {
console.log("Data Saved: " + msg);
});
window.location.href = "result_display.php";
});
});
</script>
</body>
</html>
result_display.php
<?php
ini_set('display_errors', 'On');
error_reporting(E_ALL);
?>
<?php
var_dump($_POST);
?>
答案 0 :(得分:0)
您需要在发送AJAX呼叫后删除正在执行的重定向。
删除:window.location.href = "result_display.php";
答案 1 :(得分:0)
我把重定向放回去进行测试。我运行index.php并在AJAX调用后立即重定向到result_display.php。我发现POST后为什么会有GET。谁知道为什么?请参阅附件截图。 enter image description here