外部链接将域添加到链接的前面,即使使用 http://
Posted
技术标签:
【中文标题】外部链接将域添加到链接的前面,即使使用 http://【英文标题】:External links add domain to front of link, even when using http:// 【发布时间】:2013-04-25 22:50:21 【问题描述】:问题:外部链接前面有我们的域名。
在数据库中存储以下字符串:
To learn more about Rich Habits <a href=”http://www.externaldomain.com”>click here.</a>
在我们的 PHP 文件中,我们像这样回显字符串:
</p><?php echo Author::getAuthorBio( $post->author1 ) ?></p>
浏览器生成的 HTML 如下所示:
<p>To learn more about Rich Habits <a href=”http://www.externaldomain.com”>click here.</a></p>
但是,当点击链接时,网址是: mydomain.com/”http://www.externaldomain.com”
如何使链接正确?
【问题讨论】:
还有一些我们在这里看不到的东西。也许一些 javascript 或 CSS 修改了链接?如果 html 源代码有正确的链接,那么它不是 PHP。 【参考方案1】:您试图用”
而不是"
引用属性的值。 ”
不是用于在 HTML 中引用属性的有效字符,因此它被视为 URL 的一部分。
由于”http://
不是有效的 URL 方案,它被视为相对 URL。
将”
替换为"
。
您的问题很可能是由在文本编辑器以外的其他工具中编写 HTML 引起的。文字处理器有用印刷引号代替直引号的习惯。这是处理代码而不是英语时的错误。
【讨论】:
谢谢,现在可以使用了!你说得对。该字符串最初是在一个 word doc 中。我认为将它复制到记事本然后将其复制到数据库中会起作用。你有如何转换的建议吗?我希望我们所有的作家都使用文字处理器写作。 编辑 > 在大多数程序中查找和替换【参考方案2】:您在 href 属性周围的 ”
不是双引号。它们是特殊字符。将它们替换为 "
即可解决。
【讨论】:
谢谢丁老师的回答。以上是关于外部链接将域添加到链接的前面,即使使用 http://的主要内容,如果未能解决你的问题,请参考以下文章