gpt4 book ai didi

php - 从 MySQL 中检索 HTML 并显示在 textarea 中

转载 作者:行者123 更新时间:2023-11-28 23:51:19 24 4
gpt4 key购买 nike

我想做的是获取存储在 MySQL 表中的 HTML 代码,并在文本区域中显示原始代码。不幸的是,存储的 HTML 弄乱了页面 HTML。我没有求助于 strip_tags 和 htmlentities 之类的方法的原因是因为我需要打印实际的标签和符号。有问题的数据包含 bb 代码,可能如下所示:

[pre]
<!--HTML CODE GOES HERE-->
[/pre]

我有一个类可以方便地将 bb 标签转换为实际的 html 代码,当直接在页面上显示时效果惊人。一旦[pre]标签转换为 <pre>标签,显示代码不是问题。在 input/textarea 元素中显示此数据时会出现问题,如下所示:

<textarea>
[pre]
<form></form>
[/pre]
</textarea>

如果我尝试使用 htmlentities,我所有的标签都将是 html 代码,这使得用户的编辑变得更加困难和不直观。我想结果会是这个样子:

<textarea>
&#91;pre&#93;
...
&#91;&#47;pre&#93;
</textarea>

给定这个算法:

  1. 获取用户数据

  2. 使用预处理语句(PDO 方法)存储在 MySQL 中

  3. 检索数据以随处显示

  4. 以某种方式清理此输出,使结果如下所示:

    <文本区域>[前]<表单>>/表单>[/前]</textarea>

这可能吗?

更新:

使用内容可编辑的 div 正是我所需要的!关于这个解决方案,我唯一的问题是如何保留换行符?首次创建数据时,用户会在文本区域中键入内容,提交后会在数据库中保留换行符。使用可编辑的 div 输出它似乎删除了它们,这对用户来说又不是那么直观。谢谢!

最佳答案

$htmlcontent = preg_replace('/[pre]/i', '[pre];', $htmlcontent);
$htmlcontent = preg_replace('/[/pre]/i', '[/pre];', $htmlcontent);

如此令人沮丧,它不会在评论中换行:/(我需要学习如何大声笑,我是 stackoverflow 的新手)

关于php - 从 MySQL 中检索 HTML 并显示在 textarea 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32544063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com