将 html 代码放在 MySql 数据库中是一种好的做法吗?。更具体地说,我有一个博客。我在数据库中为每个部分都有一个单独的字段:页面标题(元数据),描述,帖子标题,帖子正文......正文字段有时需要html或一种方式区分每个帖子正文之间的字幕、img 或视频及其标题。
我是唯一将内容放入该数据库的人。所以我想我不需要清理任何 html。
- 将 html 代码放入 MySql 数据库是一种好的做法吗?
- 如果 html 不是一个好的做法,如何区分帖子正文之间的 YouTube 视频和标题
我不建议将 HTML 存储在您的数据库中,因为它需要太多的清理来防止在您的数据库中存储恶意的 Javascript 代码。因此,您可以使用 PHP markdown 库以人类直观的格式很好地格式化您的消息,当您显示它时将解析为 HTML,类似于 Stackoverflow 或 Github。
参见:http://parsedown.org/
例子:
1. List 1
2. List 2
转换为:
<ol>
<li>List 1</li>
<li>List 1</li>
</ol>
对于评论中提到的Youtube embedding,有一个简单的markdown解决方案:添加额外的markdown规则!
您可以像这样使 markdown 语法简洁:@[Alt text] (YouTube-code)
这将转换为以下 HTML:
<iframe class="youtube" width="560" height="315" src="http://www.youtube.com/embed/{{YouTube-code }}?wmode=opaque" frameborder="0" allowfullscreen>{{ Alt text }}</iframe>
查看有关如何为 YT 实现此 Markdown 语法的信息来源:
https://github.com/michelf/php-markdown/issues/130