我正在尝试将带有JSON数据的POST请求发送到PHP文件,并让PHP文件将数据写入另一个文件。
var json = JSON.stringify(blogObj);
$.post("addBlog.php", { json: json }, function(data, status) {
alert("Sent!");
});
<?php
$myfile = fopen("blog.json", "w") or die("Unable to open file!");
$txt = $_POST["json"];
fwrite($myfile, $txt);
fclose($myfile);
?>
每当发送POST请求时,我在控制台中都会收到以下错误
XML解析错误:找不到根元素
地点:http://localhost/addBlog.php
第6行,第3栏:
正在写入的文件具有正确的权限
答案 0 :(得分:0)
错误来自jQuery。我假设它试图将响应解析为XML请求。
另一个问题是$_POST["json"]
是一个数组,无法直接写入文件。
尝试以下方法:
$.post("ajax.php", {json: {test: 1, test2: 2, huhu: "du da"}}, function(data) {
console.log(data);
}, "json"); // <- parse response as JSON instead of XML
对于ajax.php:
<?php
file_put_contents("/tmp/storage.log", json_encode($_POST["json"])."\n", FILE_APPEND);
echo json_encode(['status' => 'ok']);