PDA

Просмотр полной версии : [Файловый Обменник] Фильтрация нужна помощь.


w4rd3n
11.03.2006, 17:04
Пищу скрипт файлового обменника...
Заинтересовал Вопрос Филтрации расширения загружаемых файлов.

Филтрация длжна происходить на разрешенные файлы допустим что бы загружались только *.zip *.rar *.exe

У кого есть исходники подобных скриптов дайте пожалуста.

ZaCo
11.03.2006, 17:17
хахах ну вот:

$ras=substr($file_name,strlen($file_name)-4,4);
if($ras=='.rar'||ras=='.exe'||ras=='.zip')
{
//ЗАГРУЖАЕМ
}

Utochka
11.03.2006, 19:04
Посмотри на woweb.ru я там вроде видел реализации файловых обменников с проверкой на расширения файлов, смотри раздел wap обменники

KEZ
11.03.2006, 20:36
Обожаю когда один человек уже ответил - написал конкретный исходник. А другой пишет "ну посмотри там то там то"

Utochka
11.03.2006, 22:25
Сорри за оффтоп: KEZ Я поясню почему так получилось, я открыл эту тему когда еще небыло твоего поста, но потом полез на другой сайт, а точнее на woweb.ru искать крипт по этой теме, нашел его и решил запостить, что так есть такие скрипты, но браузер не обновил и запостил. Только оказалось что ты уже ответил, вот так! Если хотите удалите мой пост, я не гонюсь за колличеством постов

w4rd3n
12.03.2006, 00:24
Спасибо ZaCo

ferryman
13.03.2006, 11:32
function translit_name($name)
{
$symbs = array
(
"а" => "a","б" => "b","в" => "v","г" => "g","д" => "d",
"е" => "e","ё" => "e","ж" => "j","з" => "z","и" => "i",
"й" => "iy","к" => "k","л" => "l","м" => "m","н" => "n",
"о" => "o","п" => "p","р" => "r","с" => "s","т" => "t",
"у" => "u","ф" => "f","х" => "h","ц" => "ts","ч" => "ch",
"ш" => "sh","щ" => "sch","ъ" => "","ы" => "y","ь" => "",
"э" => "e","ю" => "yu","я" => "ya", " " => "_");

return strtr(strtolower($name), $symbs);
}
$extensions = array(".gif", ".jpg");
$img_banner = strtolower(translit_name($_FILES['file_banner']['name']));
$str_img_banner = strstr($img_banner, ".");

if(!in_array($str_img_banner, $extensions) && !empty($img_banner)){ .... }




енто выдрал из скрипта своего

дальше допишешь....

k1b0rg
13.03.2006, 12:20
делай так
$file=explode(".",$file);
if($file[1]=='exe' or $file[1]=='gif')
echo "Правильно";

p.s. дай потом адресочек своего обменника, так на всякий случай =))))))

ferryman
13.03.2006, 13:44
хахах ну вот:

$ras=substr($file_name,strlen($file_name)-4,4);
if($ras=='.rar'||ras=='.exe'||ras=='.zip')
{
//ЗАГРУЖАЕМ
}


гы... А если .gzip, jpeg - ???

ferryman
13.03.2006, 14:24
делай так
$file=explode(".",$file);
if($file[1]=='exe' or $file[1]=='gif')
echo "Правильно";

p.s. дай потом адресочек своего обменника, так на всякий случай =))))))

аналогично - file.php.exe

vectorg
13.03.2006, 16:09
аналогично - file.php.exe
настрой .htaccess в загружаемой папке...

ZaCo
13.03.2006, 16:54
2k1b0rg Не издевайся над людьми+)))
люди блин ни в коем случае код от киборга не применяйте ибо он заранее делает его небезопасным.
2ferryman не издевайся :)

ferryman
13.03.2006, 16:57
настрой .htaccess в загружаемой папке...
если сервер юниксовый....

KEZ
13.03.2006, 17:06
если сервер юниксовый....


А у меня и на виндовом работает... Странно, правда?

ferryman
13.03.2006, 17:13
А у меня и на виндовом работает... Странно, правда?

А ты верен что это .htaccess работает?

Файл .htaccess (обратите внимание что первый символ в названии файла - точка) применяется для управления веб-сервером Apache со стороны конечного пользователя хостинга

И ті хочешь сказать что какойто дурак вместо IIS поставил Apache....

k1b0rg
13.03.2006, 17:16
применяется для управления веб-сервером Apache с


И ті хочешь сказать что какойто дурак вместо IIS поставил Apache....


наверное я дурак да? у мну стоит полноценный апач, весит 30 метров, а также пакет денвера есть =))))))
штаксес просто летает, ну да наверное у дураков всегда все работает =)

ferryman
13.03.2006, 17:18
наверное я дурак да? у мну стоит полноценный апач, весит 30 метров, а также пакет денвера есть =))))))
штаксес просто летает, ну да наверное у дураков всегда все работает =)

ага и файлообменник он пишет себе домой??? чтоб постебаться (самому себе файло грузить)

ZaCo
13.03.2006, 17:24
харе флудить. решение задачи методом изменение параметров системы глупейший вариант ибо он не увирсален как минимум. тут почти тоже самое - зачем менять настройи апача, если можно сделать (ну при руках растущих не их жопы) то же самое, причем работающее и на бесплатных хотингах и под другими веб сервами.

ferryman
13.03.2006, 17:30
харе флудить. решение задачи методом изменение параметров системы глупейший вариант ибо он не увирсален как минимум. тут почти тоже самое - зачем менять настройи апача, если можно сделать (ну при руках растущих не их жопы) то же самое, причем работающее и на бесплатных хотингах и под другими веб сервами.

Ответ дан, тему можно прикрывать.

GreenBear
13.03.2006, 18:33
...
if(($HTTP_POST_FILES['userfile']['type']=="image/jpeg") || ($HTTP_POST_FILES['userfile']['type']=="application/zip"))
{
ok
}
else
{
error
}

миме
http://www.iconsfree.ru/free-icons/language/rus/c/getArticle/articleName/mimeTypes/mime-types.html

ferryman
13.03.2006, 19:11
а причем здесь миме - скажем ему надо длл длл загрузить или еще какой нить... не все хостеры дают ковыряться в миме..

уже ведь написано

$extensions = array(".gif", ".jpg");

меняешь на

$extensions = array(".rar", ".gzip", ".exe");