如何使用 POST 检索 <textarea> 值并保存到文件中?

Posted

技术标签:

【中文标题】如何使用 POST 检索 <textarea> 值并保存到文件中?【英文标题】:How to retrieve <textarea> value with POST and save to a file? 【发布时间】:2013-12-15 03:08:29 【问题描述】:

在“index.php”页面上,我有以下html

<form class="centerd" method="post" action="upload.php" enctype="multipart/form-data">
    <textarea id="html" type="text" name="html-text"></textarea>
    <input type="submit" value="upload"/>
</form>

在“upload.php”页面上,我有以下PHP代码:

<?php
file_put_contents("/files/test.html", htmlspecialchars($_POST['html-text']));
?>
<h1>From the textbox:</h1>
<? echo htmlspecialchars($_POST['html-text']); ?>

我希望文本框中的文本显示在 &lt;h1&gt; 标记之后,并且我希望创建 /files/test.html/files/ 已经存在),并将文本框中的文本放入 @987654326 @文件。

实际发生的情况是,文本框中的任何内容都显示在 &lt;h1&gt; 标记之后,但从未创建 /files/test.html

【问题讨论】:

【参考方案1】:

看起来"/files/test.html" 是一个绝对路径。你试过"files/test.html"吗?

【讨论】:

您是否检查过您对该文件夹的权限?转到您的终端并导航到文件夹 (cd /path/to/root/folder)。然后键入ls -la,每个文件/文件夹旁边应出现-rwxrwxrwx 等字符列表。您要确保files 文件夹在该列表中至少包含三个w 字符。您可以阅读有关权限以及如何更改权限的更多信息here 这是在我的网站上。我正在使用 FTP 服务器来编辑文件。我制作了一个脚本,用户可以在其中上传文件并将文件复制到网站,而我无需更改任何权限。但是现在当我尝试创建文件时,它不起作用。 对于upload.php:rw-rw-rw-【参考方案2】:

很抱歉,我无法评论布兰农所说的话,我还没有这方面的声誉。但切中要害:

有两种可能:

    正如 Brannon 所说 -> 你的路径似乎是错误的。 您无权在您的目录中写入(创建)文件。根据我的经验,这可能是未在其 htdocs 文件夹中提供权限的 Mac 用户的常见错误。

【讨论】:

【参考方案3】:

你忘记了 php!

不是:&lt;? echo ?&gt; 但是:&lt;?php echo ?&gt;

【讨论】:

这是一个 8 年前的问题......

以上是关于如何使用 POST 检索 <textarea> 值并保存到文件中?的主要内容,如果未能解决你的问题,请参考以下文章

TextArea 从数据库中保存/检索

如何在html textarea POST数据中保留换行符

html textarea通过python使用post函数

如何检索 textarea 的当前值?可以使用哪种方法代替 $("form").submit(function() ?

如何将textarea值作为单独的变量?

从Flask中的textarea检索文本[重复]