处理来自多个XHR实例的多个PHP脚本调用

 陈爱梅志杰力凯 发布于 2023-02-05 09:17

以前的样式问题:http://pastebin.com/cr432nLQ

我决定重新解释有关这个问题的整个问题,并尽可能彻底地进行.您可以在上面的粘贴中阅读之前提出的问题.

首先,感谢大家的回应,但不幸的是,他们让我无处可去.我仍然需要帮助解决我的问题.

所以,我正在使用一个名为blueimp jQuery File Upload的jQuery插件,它非常好地处理异步文件上传,它包含很多选项.该插件对我的目的来说足够好,但是我需要执行此服务器端检查以便从滥用用户中保存自己.我在谈论限制一次发生的上传次数.

默认情况下,插件的工作方式如下:用户选择多个文件(或将它们放到放置区),每个文件创建一个单独的XHR实例,然后调用我的upload.php脚本,该脚本负责存储文件.PHP上传脚本处理XHR请求,好像它只是一个图像,所以基本上,每个需要上传的图像都会upload.php单独调用脚本.

我允许上传用户的是图片.不过,我想一些限制上传数适用于10为免费用户和20为付费用户.这可以通过Javascript完成,是的,但我真的不相信Javascript这种验证,因此我正在寻求服务器端验证.但是,怎么样?这是完全不可能(至少对我来说)安全地完成.我需要以某种方式确保在我的上传脚本中用户没有超过10(或20)图像上传限制.

我发现这个jQuery插件有这个选项命名singleFileUploads:

默认情况下,使用针对XHR类型上载的单独请求上载选择的每个文件.将此选项设置为false可在每个请求中上载文件选择.

注意:使用一个请求上载多个文件需要将multipart选项设置为true(默认值).

输入:boolean

默认: true

这完全符合我的需要 - 发送一个完全填充的$_FILES数组,包含所有提交的图像上传.但我仍然看到这个问题.这仍然是由Javascript本身决定的.一个用户可以修改这部分脚本,并设置singleFileUploadsfalse一次吗?我想他们可以!如果他们不能,那么现在就回答这个问题 - 但我不知道.

下面有一个答案表明使用Apache mod_qos限制图像上传数量,但我不知道如何使它与两种不同的用户类型(免费和高级)不同.

请注意,客人也可以上传图片,并且免费用户限制应适用于他们.


那么我对这一切做了什么尝试?

我已经尝试创建一个会话的解决方案来跟踪用户上传的内容,并且对于每个新的上传,会话的值将增加一个 - 一个不够安全的解决方案,如下所示,因为cookie可以被清除.除了这个尝试,我无法从下面的答案中应用任何东西.


这个问题

那么,问题是从一开始就非常明确:我如何限制并发图像上传的数量以10为客人提供/免费用户和20至高级用户安全

编辑:我想值得一提的是,每个上传的图像在数据库中都有自己的行,上传时间和名称.也许这可以帮助!

谢谢.

撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有