【问题标题】:PHP Form - Need pastes information in textarea to keep formattingPHP 表单 - 需要在 textarea 中粘贴信息以保持格式
【发布时间】:2013-08-14 15:40:45
【问题描述】:

我正在创建一个 PHP 表单,用户必须将部分表单复制并粘贴到 .当我们生成表单的结果时,所有格式都会丢失。我所需要的只是在用户提交表单时保留换行符和/或双倍间距。

我已经阅读了有关安装 HTML 富文本编辑器的信息,但我是新手,我找不到任何适合我情况的直接答案。

在我们的 SQL 中接收输入到表单中的数据,然后将其发布到我们可以下载的 HTML 文档中。

【问题讨论】:

  • 两个思路:1、将换行符转换为<br/> 2、在文字周围套上<pre></pre>
  • @ppeterka 在 php 表单或呈现表单数据的 HTML 上执行此操作?
  • 好吧,从技术上讲,您可以同时放入上传逻辑或显示逻辑。

标签: php sql forms rich-text-editor


【解决方案1】:

您的问题在于显示:只需检查结果页面的源代码即可。

HTML 不关心换行符,也会破坏空格。

所以出现了两个简单的解决方案:

换行到<br/>

echo str_replace("\n", "<br/>", $myInputText);

这会将普通的换行符转换为 HTML 可以理解的换行符。这可以在存储内容时完成 - 然后无需对 duisplaying 部分进行任何更改。

(或者你也可以把它放到显示部分,不改变上传逻辑。)

使用&lt;pre&gt;&lt;/pre&gt;

echo "<pre>$myInputText</pre>";

这会将所有空白格式应用于内容,最好不要放在显示部分。

使用您的评论

如果我理解你想要达到的目标,这是最简单的:

$HTMLBODY .= "<h2>ESSAY</h2>";  //note the </h2>!
$HTMLBODY .= "<p><pre>" . $_POST['essay'] . "<pre></p>";

另外,同时,小心使用未经处理的$POST[''] 条目:有一点黑客本能的人可能会对您的网站做出疯狂的事情...

【讨论】:

  • 这是我的发帖代码:$HTMLBODY .= "

    ESSAY"; $HTMLBODY .= "

    " 。 $_POST['论文'] 。 "

    ";表单标签是'essay'
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-02-20
  • 1970-01-01
  • 1970-01-01
  • 2018-02-16
  • 1970-01-01
  • 2021-12-10
  • 1970-01-01
相关资源
最近更新 更多