【发布时间】:2012-03-19 00:04:11
【问题描述】:
在我的网站上,我在我的论坛上启用了 BBCode,但是,我的一些用户一直在利用它,并且一直在将图像的来源设为一个页面,为用户提供“尊重点”。我想知道是否有办法检查 [img] 标签内的 URL 是否是真实图像,而不仅仅是网页。我在想“getimagesize”函数在这里可能很有用,但我找不到合适的方法来检查它是否是真实图像,并且之后能够用正则表达式解析它。我不希望只检查文件扩展名,因为有些图像在我的网站上没有文件扩展名。对此有何见解?
【问题讨论】:
-
您可以使用
getimagesize(),但不允许包含 .tiff 图像等;它只支持 JPG、PNG,我认为是 BMP 或 GIF。您可以查看图像的 MIME 类型是否包含image/。 -
如果您打算在每次页面加载/刷新时检查它是否是真实图像,那么这是您能想到的最糟糕的想法。只需在“尊重点”脚本中添加一些 sessionid/自定义参数检查
-
简短回答:你不能。主持人可以检查请求是否来自您,如果是,则给您一张图片,同时重定向所有其他人进行投票。解决此问题的一种方法可能是不允许通过 GET 请求执行任何操作。
标签: php regex image bbcode verify