【发布时间】:2015-07-02 10:27:28
【问题描述】:
所以这是我的问题。我的管理员需要上传文件,每个文件可以在 2-500 MB 之间。我已经适当地设置了我的 php.ini 设置,并且一切都很好地满足了这个要求。但现在我被要求允许客人从前端上传文件。显然,我不想让他们能够上传 500 MB 的文件。
我已经四处搜索,但无法找到一个合适的答案来允许在管理员中上传大文件,同时将前端访客限制为较小的文件大小。
那么,您如何让您的管理员继续上传超大文件,同时将前端用户限制为较小的文件?
这是我的解决方案:
public function saveAction()
{
$post = $this->getRequest()->getPost();
$helper = Mage::helper('my_module');
if ( $post ) {
try {
if ($_FILES['size'] >= 2000000) { // Limit is set to 2 MB
$errors[] = $helper->__('You have exceeded the max file size.');
$error = true;
}
if ($error) {
throw new Exception();
}
// Perform save operations here.
} catch (Exception $e) {
foreach($errors as $error) {
Mage::getSingleton('core/session')->addError($error);
}
$this->_redirect('*/*/*');
return;
}
}
}
这会检查文件是否超出限制。如果是,则抛出异常。
无论如何,我正在为同样的问题寻找更好/替代的解决方案。有的话就贴出来!
【问题讨论】:
标签: file-upload magento-1.7 filesize