PHP 撇号逃脱了破坏链接
我获得了一组表示 URL 链接的数据。如:“doug'sfood.jpg”
。
。
我将这些字符串保存在一个数组中,然后随机选择它们以显示将它们插入
<img src="doug'sfood.jpg"></img>
Chrome 输出的是:
<img src="doug'sfood.jpg"></img>
我尝试用 php 转义 (\'
) 撇号替换引号,但是这个刚刚提前结束了报价。
有人可以帮助我吗?谢谢。
I was provided with a set of data that represents URL links. Such as: "doug'sfood.jpg"
.
.
I keep these strings in an array, and then select them randomly to display inserting them into an
<img src="doug'sfood.jpg"></img>
What Chrome is putting out is:
<img src="doug'sfood.jpg"></img>
I tried replacing the quotes with a php escaped (\'
) apostrophe, but this just ended the quote prematurely.
Can someone help me? Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我认为 Chrome 会自动转义未正确转义的字符。
始终使用:
代替:
在 HTML 中应始终对某些字符进行转义,例如:
检查 htmlspecialchars() 和 urlencode() 函数,例如:
I think Chrome automatically escapes characters that are not correctly escaped.
Always use:
Instead of:
Certain characters should always be escaped in HTML, for example:
Check the htmlspecialchars() and urlencode() functions, example:
无论如何,在打印文件名标签时,请使用
urlencode()
而不是依赖 HTML转义或浏览器行为:在您的示例中,这将成为
doug%27sfood.jpg
(也称为正确的方法)。希望您的网络服务器可以找到它。Anyway, when printing out the filename tags, use
urlencode()
rather than relying on HTML escapes or browser behaviour:This will become
doug%27sfood.jpg
in your example (AKA the correct way to do it). Which hopefully can be located by your webserver.