Я использую Cakephp в качестве рамки. У меня проблема с загрузкой файлов через форму. Я использую плагин Uploader с сайта THIS.Проблема с загрузкой файла CakePHP
У моего php ini-файла есть этот кусок кода.
upload_max_filesize = 10M
post_max_size = 8M
это из uploader.php -> плагин файл имеет
var $maxFileSize = '5M'; //default max file size
В моем файле controller.php, я использую этот код, чтобы установить максимальный размер файла в 1 МБ во время выполнения.
function beforeFilter() {
parent::beforeFilter();
$this->Uploader->maxFileSize = '1M';
}
В uploader.php мы выполняем это ...
if (empty($this->maxFileSize)) {
$this->maxFileSize = ini_get('upload_max_filesize'); //landmark 1
}
$byte = preg_replace('/[^0-9]/i', '', $this->maxFileSize);
$last = $this->bytes($this->maxFileSize, 'byte');
if ($last == 'T' || $last == 'TB') {
$multiplier = 1;
$execTime = 20;
} else if ($last == 'G' || $last == 'GB') {
$multiplier = 3;
$execTime = 10;
} else if ($last == 'M' || $last == 'MB') {
$multiplier = 5;
$execTime = 5;
} else {
$multiplier = 10;
$execTime = 3;
}
ini_set('memore_limit', (($byte * $multiplier) * $multiplier) . $last);
ini_set('post_max_size', ($byte * $multiplier) . $last); //error suspected here
ini_set('upload_tmp_dir', $this->tempDir);
ini_set('upload_max_filesize', $this->maxFileSize); //landmark 2
ОЖИДАЕМЫЕ РЕЗУЛЬТАТЫ: При попытке загрузить файл, который является 2MB размера, оно не должно иметь место, потому что MaxFileSize 1 МБ во время выполнения. Поэтому загрузка должна завершиться неудачей.
ПРОБЛЕМА: Но она загружается.
Ориентир 1 не выполнен. (в комментариях) ... метка земли 2, похоже, не работает ... upload_max_filesize не получает значение от maxFileSize.
Пожалуйста, помогите мне ... спасибо