Php 将textarea的内容保存到文件时,fwrite不fwriting
我正在制作一个在线文本编辑器——只是一个简单的文本编辑器。我正试图编写代码将textarea的内容保存到一个文件中——首先将该文件打开到textarea中(这很好),然后我想保存编辑过的文本。写作不起作用。下面是重要的代码(我为混乱道歉,对于我和PHP来说现在还为时过早):Php 将textarea的内容保存到文件时,fwrite不fwriting,php,textarea,fwrite,Php,Textarea,Fwrite,我正在制作一个在线文本编辑器——只是一个简单的文本编辑器。我正试图编写代码将textarea的内容保存到一个文件中——首先将该文件打开到textarea中(这很好),然后我想保存编辑过的文本。写作不起作用。下面是重要的代码(我为混乱道歉,对于我和PHP来说现在还为时过早): 这是因为您正在使用r标志以readonly模式打开文件: $openedfile = fopen($filename, "r"); -------------------------------^ 您应该使用r+、w或a
这是因为您正在使用r
标志以readonly
模式打开文件:
$openedfile = fopen($filename, "r");
-------------------------------^
您应该使用r+
、w
或a
(追加)标志
仅用于阅读
使用
您已以只读模式打开文件句柄。$openedfile=fopen($filename,“r”)代码>您正在以只读模式打开文件,请使用
r+
而不是r
我建议您研究一下,因为它简化了所有的fwrite
、句柄和fclose
内容。使用此功能通常非常简单。从文件中可以看出:
$file = $filename;
$text .= "Hello\n";
file_put_contents($file, $text);
我用以下代码进行了尝试:$newcontents=$\u POST[“textdata”];文件内容($filename,$newcontents)代码>,遗憾的是,它仍然不起作用。我知道$newcontents包含文件的更新版本,而$filename适用于代码前面的file\u get\u contents()
。可能是权限问题吗?可能是。检查您的权限,目录和文件都是755,听起来不错。我发现并不是文件内容什么都不做——它会把文件擦干净。$newcontents中的任何内容都会在textarea和函数之间丢失。您可以添加第三个参数,将字符串追加到文件中。追加并不重要-textarea显示整个文件,我编辑它,然后整个文件可以写回服务器。只是那没用。我会一直戳它。
fopen($filename, "r");
fopen($filename, "r+");
$file = $filename;
$text .= "Hello\n";
file_put_contents($file, $text);