Проверять тип файла необходимо. Поэтому данный метод не подойдёт для работы на сервере в сети, если конечно не хотите что бы вам загрузили вредоносный файл/скрипт.
Файл ядра: function/function.php
Функция загрузки файлов: upload()
Функция проверки типа файла: check_file()
Функция проверки размера файла: check_size()
Для отслеживания ошибок рекомендую в конфигурациях безопасности активировать:
Показывать сообщения об ошибках? - Да
Показывать сообщения об JavaScripts ошибках? - Да
[локальный сервер]
Вообщем методом проб выяснил что файлы заливаются только в таком режиме:
upload(1,......) , если первый аргумент 2,3,4 то файлы не заливаются и функция не возвращает ошибку. показ ошибок вкл. в лог файлах ошибок пусто.
• 1. чем отличаются эти режимы arg[0] 1-2-3-4 ? и почему остальные (2-3) могут не работать.?
• 2. зачем передается аргумент с user_id (и почему в админке при заливке там 1)?
• 3. не получается заливать в суб директорию, если указать $dir=модуль
/субпапка то как я понимаю функция
analyze() не пропускает, причем это тоже своего рода дырка.. т.к. файлик то заливается все равно НО в корень uploads/ , IF там не завезли....
как бы передавать дир. с субпапками так что бы это было относительно безопасно, analyze() поправить или слеш экранировать как то?
• 4. зачем вообще заморачиватся с конфигами, с отрисовкой их в интерфейсе, с функциями по их правке и проверке, а потом фигачить вот такой код:
case "uploads_save":
$dir = analyze($_POST['dir']);
upload(3, "uploads/".$dir, "gif,jpg,jpeg,png,zip,rar", "104857600", $dir, "1600", "1600", '1');
if ($stop) {
uploads();
} else {
header("Location: ".$admin_file.".php?op=uploads&dir=".$dir);
}
break;
это с какой колокольни я могу загружать принципиально не более
104,8576мб и только
gif,jpg,jpeg,png,zip,rar мне вот PDF принципиально нужен...
ну что за деградация то....
для примера полез в архив, см SLAED_CMS_2.1_Lite.zip (у меня отображается дата
2006!!!)
case "SaveUploads":
$udirectory = "uploads/".$_POST['dir']."";
upload($udirectory, $utypefile, $umaxsize, $_POST['dir'], $uwidth, $uheight);
if ($stop) {
Uploads();
} else {
Header("Location: ".$admin_file.".php?op=Uploads&dir=".$_POST['dir']."");
}
break;
мда... отдельно "поржрал" как "изменился" код за 10лет.
P.S.
Эдуард, т.к. подробных мануалов по функционалу, и по функциям в частности тут 12 лет не завозили, а система стала FREE и как предполагается "должна развиваться сообществом" предлагаю, а точнее даже прошу начать оставлять читабельные коменты в коде, что бы это самое сообщество тратило не всю ночь, а ну хотя бы половину
пытаясь разобраться в твоем коде, почему в функцию передаются именно эти аргументы, и т.д.
P.S2
по этой проблеме
https://slaed.net/index.php?name=forum&op=view&id=15340&num=1#15354 нет решения?