我的数据库中存储了基本的html,其中包含html,例如锚标记。
我正在存储所有&在数据库中为&
然而,当数据显示在屏幕上时,锚标签停止工作,因为&在链接中变为&
。
问题是,锚标记周围的其他内容应保持为&
例如
数据库内容可能如下所示
<p>this is paragraph 1 & this is <a href="http://www.companyname.com/page.php?paragraph=2&sentence=4">paragraph 2</a>.</p>
&amp;在网址中变为&
,这会阻止网址工作,但与此同时,&amp;在
标签中,任何其他标记都应保留为&
答案 0 :(得分:2)
&amp;在href和<p>
中,应将&
编码为有效
答案 1 :(得分:1)
可能您正在寻找http://pl.php.net/manual/en/function.html-entity-decode.php
我假设您将数据库分别存储在db。
中答案 2 :(得分:0)
网址仍应“有效”。
虽然常见的约定不是麻烦,但像&
或&
这样的&符号should always be encoded等HTML实体 - 你已经在做后者了,所以生成的URL应该是有效的。
e.g。 <a href="page.php?a=1&a=2">link</a>
和<a href="page.php?a=1&a=2">link</a>
都会显示链接到URI page.php?a=1&a=2
的锚标记。
更新啊,显然在某些浏览器中&
is seen as的哈希结束了网址。
&
代替&
... or, ideally, %26
。