【问题标题】:Textarea content to databaseTextarea 内容到数据库
【发布时间】:2013-08-10 09:11:00
【问题描述】:

我有一个名为personalInfos的文本区域,我在其中填写以下格式的信息:

<p><span class="white">1966 - '69</span><br/> text .... </p>

当我将它提交到数据库时,它会保存好,格式相同。当我将代码从数据库检索到管理 textarea 时,它会被填满。

我唯一的问题是在前端,我将代码显示为文本而不是呈现为 html 代码。所以基本上我在页面上看到它是这样的:

<p><span class="white">1966 - '69</span><br/>  

【问题讨论】:

  • PHP 版本?如何将其插入数据库?
  • 您能否添加一些有关如何从数据库中检索数据的信息?还是演示页面的链接?
  • 我有一个自定义 db 类,我为所有 mysql 操作调用它。为了在首页上检索,我使用以下代码: $infos = new mysql("infos", "", ""); while($infos ->fetch_array()) echo $infos ->body;

标签: php html mysql textarea


【解决方案1】:

您很可能会显示由htmlentities() 或类似函数处理的提取代码。在大多数情况下,这是避免在 cmets 中种植即 html 的方法。因此,只需在获取(或插入 - 取决于您在哪里执行此操作)后停止执行此操作,您的内容将作为文字 HTML 输出并由 Web 浏览器正确处理。

【讨论】:

  • 技术上“是”,但逻辑上“否”,因为这不是解决方案,而是解决方法。如果您不希望以这种或另一种方式处理某些内容,请停止处理它。
  • htmlentities不是有时用来防止一些SQL攻击的吗?
  • 是的。那些不明白他们在做什么的人。那些明白的人,使用mysqli_real_escape_string()或其他专门为此目的的方法。
【解决方案2】:

你应该看看htmlspecialchars_decode()

示例

$str = '<p><span class="white">1966 - \'69</span><br/> text .... </p>';
echo htmlspecialchars_decode($str);

还要确保转义单引号。

【讨论】:

  • @AndyLisac 没问题 :)
猜你喜欢
  • 2015-05-24
  • 2015-08-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-15
相关资源
最近更新 更多