|
| |
|
|
| |
для: bonus_FM
(12.07.2006 в 14:02)
| | | Вообще это довольно плюшевая проверка, так как достаточно переименовать загружаемый файл с другим расширением чтоб он был пропущен.
Лучше проверять MIME типы файлов. Определить разрешённые и пропускать только их.
MIME тип загружаемого файла храниться в $_FILES['filename']['type'].
Вот некоторые MIME типы (полный список легко можно найти в яндексе):
Архив RAR (.rar) application/x-tar
Архив ZIP (.zip) application/x-zip-compressed
Исполняемый файл для DOS или Microsoft Windows (.exe .com) application/octet-stream
Аудио- или видеозапись ASF video/x-ms-asf
Аудио- или видеозапись WMV video/x-ms-wmv
Аудиозапись AIFF audio/aiff
Аудиозапись AU (.au .snd) audio/basic
Аудиозапись MIDI audio/mid
Аудиозапись MP3 audio/mpeg
Аудиозапись WAV (.wav) audio/x-wav
Аудиозапись WMA audio/x-ms-wma
Аудиозапись AVI video/avi
Аудиозапись AVI (.avi) video/x-msvideo
Видеозапись Indeo (IVF) video/x-ivf
Видеозапись MPEG (.mpeg .mpg .mpe) video/mpeg
Видеозапись QuickTime (.qt .mov) video/quicktime
Визитная карточка, используемая почтовыми программами для хранения данных об адресате text/x-vcard
Графический файл ART image/x-jg
Графический файл BMP image/bmp
Графический файл GIF image/gif
Графический файл JPEG image/jpeg
Графический файл PNG (.png) image/png
Графический файл Macromedia Flash application/futuresplash
Графический файл TIFF image/tiff
Документ Adobe Acrobat application/pdf
Документ HTML text/html
Документ Microsoft Excel application/x-msexcel
Документ Microsoft Word application/msword
Документ RTF application/msword
Документ RTX text/richtext
Документ XML text/xml
Приложение application/x-msdownload
Приложение HTML (HTA) application/hta
Таблица стилей HTML text/css
Текстовой документ text/plain
ECMAScript text/ecmascript
Microsoft JScript text/Jscript
Microsoft JScript text/javascript
Microsoft VBScript text/vbs
Microsoft VBScript text/vbscript
Трехмерная интерактивная графика в формате VRML (.wrl) x-world/x-vrml
|
| |
| |
|
|
| |
|
|
| |
для: bonus_FM
(12.07.2006 в 14:02)
| | |
if(preg_match("/[а-яё]+/i",$text))
|
[поправлено модератором] | |
| |
|
|
| |
|
|
| |
для: bonus_FM
(12.07.2006 в 14:02)
| | | Sasha.bad.file.php
Он решит что окончание нашего файла: ".bad.file.php"
Который не находится в запрещённых окончаниях. | |
| |
|
|
| |
|
|
| |
для: bonus_FM
(12.07.2006 в 14:02)
| | | Да код Ахилла работает, но вот хотелось бы тоже насчёт имён файлов узнать. | |
| |
|
|
| |
|
|
| |
для: valenok
(12.07.2006 в 09:36)
| | | Axxil, Ага, спасибо, этот код работает. А как проверить имеются ли в имени загружаемого файла русские символы? А почему нельзя и нужно так: <?
$file_name="Sasha.bad.file.php";
If(in_array(substr($file_name,strrpos($file_name,".")),$bad_array){die();} У меня и так работает. | |
| |
|
|
| |
|
|
| |
для: Axxil
(11.07.2006 в 22:15)
| | | Так нельзя.
Sasha.bad.file.php
<?
$file_name="Sasha.bad.file.php";
If(in_array(substr($file_name,strrpos($file_name,".")),$bad_array){die();}
|
| |
| |
|
|
| |
|
|
| |
для: QWPLJ
(11.07.2006 в 16:45)
| | | А если так:
<?
list($filename,$ext) = explode(".",$name_file);
$ban_array = array('php','asp','js'); // короче все нежелательные типы файлов
if(in_array($ext,$ban_array)){
echo "Запрещённый тип файла";
}
?>
|
| |
| |
|
|
| |
|
|
| | Люди, подскажите, плиз, следующее при загрузке файлов с компьютера пользователя на сервер:
1) Как проверить имеются ли в имени загружаемого файла русские символы?
2) Как запретить загрузку на сервер определённых типов файлов?
Я пробовал так:
$name_file = $_FILES ["userfile"] ["name"];
$no_type = ereg ("^(.*)\\. (php|asp|js|htaccess|ini|cgi|exe|htm|html|xml)$", $name_file);
if ($no_type)
{
echo "Запрещённый тип файла";
}
|
Но не получается, загружаются все расширения. | |
| |
|
|
|