我正在尝试将我的URL字符串的特定部分发送到我的php文件,然后相应地填充我的页面。除了AJAX POST方法之外,一切正常。我已经尝试在我的PHP中执行POST变量的var_dump,并且我的数组是空的(所以我知道什么都没有通过)。
成功会在通过时返回,因此我不知道数据的去向。我正在XAMPP本地测试,我已经通过SoF进行了梳理,并且在任何修复方面都没有运气。我的代码如下。
页面的屏幕截图:
jQuery AJAX请求:
$(document).ready(function() {
str = window.location.href;
pos = str.search("pages/"); //42
send = str.slice(42, -5);
console.log(send);
console.log(pos);
$.ajax({
type: "POST",
url: "retrieve.php",
data: {
tom: send
},
success: function() {
$.get("retrieve.php", function(data, status) {
$("#main").html(data);
}) //ends GET function
},
error: function() {
console.log(arguments)
}
}); //ends POST request
}); //ends DOC-READY function
PHP:
echo "<i>hello</i>";
echo var_dump($_POST);
$url = $_POST['tom'];
json_decode($url);
echo $url;
答案 0 :(得分:2)
尝试下面的内容,
除非您发送json请求,否则您不需要json_decode
,并且请确保所有帖子值正在通过。
的Ajax:
$(document).ready(function() {
var str = window.location.href;
var pos = str.search("pages/"); //42
var send = str.slice(42, -5);
console.log(send);
console.log(pos);
$.ajax({
type: "POST",
url: "retrieve.php",
data: {
'tom': send//make sure this is not empty
},
success: function(data) {
console.log(data);
},
error: function(arguments) {
console.log(arguments)
}
}); //ends POST request
}); //ends DOC-READY function
PHP:
if($_SERVER['REQUEST_METHOD'] == 'POST'){
//echo "<i>hello</i>";
//echo var_dump($_POST);
$url = $_POST['tom'];
json_encode($url);
echo $url;
}