我试图使用fwrite将数据保存到文件中,问题是它正在创建具有相同文件名的第二个文件,并且数据将保存到第二个文件而不是原始文件。
它适用于Windows localhost,Apache 2.4.10,PHP 5.6(无第二个文件),但不适用于运行Linux和PHP 5.4.42的实时服务器。
edit.php
$(document).ready(function() {
var pageName = "<?php echo $pageName; ?> ";
$('#save').click(function(e) {
e.preventDefault();
var content = $('#content').html();
$.ajax({
type: 'POST',
url: 'includes/readInput.php',
data: {
content: content,
pageName: pageName,
}
}).done(
function(data){
}
);
});
});
readInput.php.
// Receive post variable s from "admin/ edit.php"
$content = $_POST['content'];
$pageName = $_POST['pageName'];
$dirPath= "../content/";
file_put_contents($dirPath.$pageName,$content);
答案 0 :(得分:0)
如果您使用&#34; a&#34;打开存储数据的文件。从append flag开始,这将导致在文件内容的末尾写入:
$file = fopen($filename, 'a');
fwrite($file, 'new content');
然后,您的文件将与旧内容一起存储,并且&#34;新内容&#34;结束。