我有一个充满单词的数据库表。我想要做的是有一种方法以超链接的形式在html中显示用户,这些关键字中的任何一个。有点像你现在在很多论坛上看到的那种日子。当在html中记下关键字时,它变为可点击。有没有办法做到这一点?我正在使用php。
由于
答案 0 :(得分:0)
您可以创建一个包含ID字段的链接URL表,以及一个存储关键字表中行ID的字段。您可以使用以下内容选择链接的网址:
select keywords.name, links.url
from keywords, links
where keywords.id = links.keywords_id
and keyword.name = 'keyword_in_the_html'
答案 1 :(得分:0)
我能想到的最明显的方法是循环遍历数据库中的每个关键字,并在HTML上为每个关键字运行preg_replace
(只需用适当的超链接替换每个单词)。
您的正则表达式可能很复杂,因为您需要确保所有单词替换都不会干扰您的HTML,并且您还需要确保只替换整个单词而不是部分单词。
最后,如果您的单词数据库非常大,那么每次请求都会很昂贵。因此,请考虑执行一次并存储结果。
或者,将处理卸载到客户端并使用JavaScript进行替换。因此,修改HTML标记可能不是问题,因为您应该只能在DOM的文本节点上运行替换。但同样,如果您的数据库很大,您将不得不向客户端发送一长串单词以供JavaScript循环使用。