|
|
|
| Файл загружается через web-форму
<?php
if (isset($_FILES["filename"]))
{
if ($_FILES["filename"]["name"]!='')
{
if($_FILES["filename"]["size"] > 12*1024)
{
echo ("Размер файла превышает двенадцать килобайт");
} else
if(copy($_FILES["filename"]["tmp_name"], "obraz/".$_FILES["filename"]["name"]))
{
echo("Файл успешно загружен <br>");
} else {
echo("Ошибка загрузки файла");
}
} else echo 'Файл не указан!';
}
?>
<html>
<body>
<h2>Загрузка образа персонажа</h2>
<form action="obraz_upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="filename"><br>
<input type="submit" value="Загрузить"><br>
</form>
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: Brandon Hit
(09.02.2006 в 15:50)
| |
<?
$filetype = $_FILES['filename']['type'];
?>
|
как ни странно :) | |
|
|
|
|
|
|
|
для: Axxil
(09.02.2006 в 16:02)
| | Извинияюсь... неправильно выразился:)
Надо получить не тип файла, а его расширение:) | |
|
|
|
|
|
|
|
для: Brandon Hit
(09.02.2006 в 16:06)
| | в имени файла, если идти с конца и до точки - будет расширение
можно с помощью регулярного выражения ето все оформить...
имя файла: $_FILES['filename']['name'];
другое дело, что расширение легко поменять... нужно проверить тип файла
и сравнить его с расширением...
может быть есть другие способы, которых я не знаю :) | |
|
|
|
|
|
|
|
для: kasmanaft
(09.02.2006 в 16:47)
| | Да, расширение сейчас никакой роли не играет, только связывает файл с определённой прогой.
$_FILES['filename']['type'] содержит mime тип файла. Вот выборочный список:
Архив RAR application/x-tar
Архив ZIP application/x-zip-compressed
Исполняемый файл (.exe) application/octet-stream
Аудио- или видеозапись ASF video/x-ms-asf
Аудио- или видеозапись WMV video/x-ms-wmv
Аудиозапись AIFF audio/aiff
Аудиозапись AU audio/basic
Аудиозапись MIDI audio/mid
Аудиозапись MP3 audio/mpeg
Аудиозапись WAV audio/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
Графический файл 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
|
Т.о. если загружен jpg файл то $_FILES['filename']['type']='image/jpeg'; | |
|
|
|
|
|
|
|
для: kasmanaft
(09.02.2006 в 16:47)
| | >в имени файла, если идти с конца и до точки - будет
>расширение
>можно с помощью регулярного выражения ето все оформить...
>
>имя файла: $_FILES['filename']['name'];
Вот, значит надо через регулярные выражения!
А может кто-нибудь составит рег. выражение?
:) | |
|
|
|
|
|
|
|
для: Brandon Hit
(09.02.2006 в 17:28)
| | Да не надо здесь регулярныx выражений
<?
list($filename,$fileext)=explode(".",$_FILES['filename']['name']);
?>
|
В переменной $fileext будет расширение файла.
ТОлько зачем вам расширение нужно? | |
|
|
|
|
|
|
|
для: Axxil
(09.02.2006 в 18:20)
| | preg_match('/\.(jpg|jpeg|gif|png)$/i', $_FILES["filename"]["name"],$out
Регулярное выражение
>ТОлько зачем вам расширение нужно?
переписать файл со случайным id, а для этого нужно было знать расширение файла. | |
|
|
|