Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено?..] Размер загружаемых изображений


Recommended Posts

Подскажите, как ограничить размер загружаемых изображений?

Установлен ocStore-2.1.0.1.1

 

В Настройках магазина есть опция: Загрузки - Максимальный размер файла

post-705502-0-75672700-1452888856_thumb.png

 

Так вот эта опция не работает - загружаются файлы любого размера и очень большие в том числе,

после чего менеджер изображений перестает работать.

Приходится потом вручную удалять огромные файлы с сервера.

 

В предыдущих версиях, например, в 1.5.5.1, загружаемые изображения проверялись на соответствие размерам в  модуле

admin\controller\common\filemanager.php 

таким образом:

if ($this->request->files['image']['size'] > 300000) {
$json['error'] = $this->language->get('error_file_size');
}
 
В установленном у меня ocStore-2.1.0.1.1
в модуле filemanager.php какая-либо проверка размера загружаемого изображения отсутствует.
 
Я пробовал дописать туда вышеуказанную проверку, но безрезультатно.
 
Прошу помочь в решении этой проблемы!
Надіслати
Поділитися на інших сайтах


Я в таком случае использую Microsoft Office Picture Manager - Отлично реализовано: Изменить рисунки -> сжатие рисунков -> сжимать для веб страниц. (на выходе 400 кб сжимает до 30-35кб)

Может и Вам понравится.

Надіслати
Поділитися на інших сайтах


Подскажите, как ограничить размер загружаемых изображений?

 

в 2х, несмотря на присутствие этой опции в настройках магазина, она не учитывается

вспоминая, сколько тем и матов было по поводу невозможности загрузки больших файлов - возможно ее "забыли" специально :-D

 

для использования ограничения на размер загружаемых файлов, указанный в настройках

в файле admin\controller\common\filemanager.php после

                if (!in_array(utf8_strtolower(utf8_substr(strrchr($filename, '.'), 1)), $allowed)) {
                    $json['error'] = $this->language->get('error_filetype');
                }

добавить

                if ($this->request->files['file']['size'] > $this->config->get('config_file_max_size')) {
                    $json['error'] = 'Файл слишком большого размера!';
                }

и обновить кеш модификаторов для применения изменения

Надіслати
Поділитися на інших сайтах

  • 2 years later...

Доброго дня всем.

Не могу разобраться в настройках размера файлов загрузки. У меня установлен доп. шаблон на ocStore 2.3. 
Были проблемы с добавлением картинок (появлялась сверху срока с ошибкой на размер файлов). Когда поставил вышеуказанное ограничение в filemanager.php - теперь ругается на любой размер картинки при загрузке (хоть 6 кБ). В настройках в системе уже поставил  Максимальный размер файла = 1000000. Всё равно ругается 'Файл слишком большого размера!'.

В чём может быть проблема ?
Прошу подробно объяснить. Я сам новичок в opencart... 

Надіслати
Поділитися на інших сайтах


  • 3 months later...

на всякий случай.. в догонку, для 2.3.0.2.3.

  <!-- Ограничение на размер загружаемого файла -->

  <file path="admin/language/ru-ru/common/filemanager.php">
    <operation error="skip">
      <search><![CDATA[$_['error_filesize']   			= 'Внимание: Некорректный размер файла!';]]></search>
      <add position="replace">
        <![CDATA[
          $_['error_filesize']   			= 'Внимание: размер файла не должен превышать %s байт!';
        ]]>
      </add>
    </operation>
  </file>

  <file path="admin/controller/common/filemanager.php">
    <operation error="skip">
      <search><![CDATA[// Return any upload error]]></search>
      <add position="before">
        <![CDATA[
          if ( $file['size'] > $this->config->get('config_file_max_size') ) {
            $json['error'] = sprintf($this->language->get('error_filesize'), $this->config->get('config_file_max_size'));
          }
        ]]>
      </add>
    </operation>
  </file>

 

  • +1 1
Надіслати
Поділитися на інших сайтах


  • 3 years later...

Заметил проблему, в $this->request->files['file']['size'] всегда приходил ноль. И ошибка не подтягивалась.

 

Проверил, в настройках сервера стоял лимит 2мб, а файл загружал 5мб, соответственно файл не сохранялся даже как "временный" и невоможно было проверить размер.

 

Получается чтобы корректно отрабатывала ошибка, нужно на сервере увеличит лимит, а со стороны опенкарта указать необходимый.


Может кто-то подскажет, есть-ли способ проверять размер файла до загрузки его на сервер (в тот-же временный файл), чтобы ограничения и на сервере и в настройках сайта могли совпадать, и при этом ошибка всегда показывалась? Например перед выполнением ajax запроса проверить размер файла

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.