html - 将格式化文本存储在数据库中以便稍后输出的好方法

标签 html mysql css

我为我的网站写新闻,格式如下:

[h1]News[h1]
[red]Happy New Year[/red]
[white]Happy New Year[/white]

新闻按原样存储在 MySQL 数据库中。 然后当它被我的网站调用时,一个函数将每个代码转换为 HTML 格式。

[h1][/h1] = <h1></h1>
[red][/red] = <font color=red></font>

很长一段时间我对这种方法都不满意,但现在这种代码对于 HTML5 来说已经过时了。 我应该将它添加到 CSS 而不是使用。

我是 PHP、MySQL、CSS、HTML 的新手……真的,但我正在尝试和学习。

所以,我需要的是解决这个问题的最佳方案。

我想创建一个 CSS 规则,例如:

span.news-red { color=red }
span.news-white { color=white }

然后将它们放入红色文本等的代码中......

这是一种有效的解决方案还是只是一种缓解措施?

谢谢。

编辑

我有这两个函数来转换我的文本格式,以便为访问者输出。

1st = 将 [white-text][/white-text] 转换为

$string = preg_replace("/\[white-text\](\S+?)\[\/white-text\]/si","<font color=white>\\1</font>", $string);

第二 - 将 [url][/url] 转换为

$string = preg_replace("/\[url\](\S+?)\[\/url\]/si","<a href=\"http://\\1\" target=\"_blank\">\\1</a>", $string);

问题: WHITE-TEXT - 它只改变一个单词短语的颜色。

URL - 它工作正常,但我希望能够在 URL 的可读部分写入任何内容。

最佳答案

一般来说,您希望拥有通用的文​​本样式。向他们描述你为什么要做你正在做的事情。如果我是你,我会根据数据库中的内容来命名它们。那么假设您认为红色只是一种糟糕的颜色选择。您始终可以非常轻松地将其更改为不同的,只需编辑 CSS。

不知道你为什么选择红色,我不能给你很多答案,除了尝试使用与你选择红色的原因相关的 css 名称,而不是你在第一个做什么地方。

关于html - 将格式化文本存储在数据库中以便稍后输出的好方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13532831/

相关文章:

MySQL 在连接表中使用 count() 匹配记录时性能缓慢

php - 按相同字段分组并显示为 1 个部门

css - 如何让背景填充屏幕的宽度(而不是高度)?

html - 他们 Logo 上的谷歌技巧是什么?

javascript - 扩大div的宽度以缩小其他div的宽度

html - 如何使用 HTML 服务制作标签面板

javascript - 如何将 td 高度固定为桌面高度?

html - 是否可以遍历 Jekyll 中的子文件夹?

mysql - 在 MySQL 中创建存储过程

css - 为什么我的无序列表之前有空隙?