[英]Can I save a file which will be generated from php code on server side using only javascript/C/C++ and no browser opened?
[英]Save to server side file from PHP via Javascript
我正在嘗試使用PHP將javascript文件中的json字符串保存到服務器上的本地文件中,但是我的json文件根本沒有被修改。 這是我的Javascript:
function saveToFile(data){
jsonString = JSON.stringify(data);
$.ajax({
url: 'php/save.php',
data : jsonString,
type: 'POST'
});
}
請注意,jsonString是有效變量,我可以將其正確登錄到控制台。
這是我的PHP:
<?php
$data = $_POST['jsonString'];
$f = fopen("../website-contents.json", "w") or die("fopen failed");
fwrite($f, $data) or die("fwrite failed");
fclose($f);
?>
請注意,即使是試圖將“ Hello World”保存到“ test.txt”的測試也無法正常工作,或者通過錯誤進行。
最后,這是我的文件夾結構:
這是您的解決方案。
js代碼
function saveToFile(data){
jsonString = JSON.stringify(data);
$.ajax({
url: 'php/save.php',
data : {'jsonString':jsonString},
type: 'POST'
});
}
PHP代碼。
$data = $_POST['jsonString'];
//set mode of file to writable.
chmod("../website-contents.json",0777);
$f = fopen("../website-contents.json", "w+") or die("fopen failed");
fwrite($f, $data);
fclose($f);
我同意指出您必須有權限問題的評論。 但是,也不能解決此問題后。 你有
$data = $_POST['jsonString'];
但是在哪里設置一個名為jsonString
的鍵? 采用
function saveToFile(data){
var jsonString = JSON.stringify(data);
$.post("php/save.php", {
jsonString: jsonString
})
}
代替。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.