![]() |
php: залить несколько файлов
есть форма:
__________ <FORM name="file_upload" enctype="multipart/form-data" method="post" action="upload.php"> <INPUT type="file" name="file_0"> <INPUT type="file" name="file_1"> <INPUT type="file" name="file_2"> <INPUT type="submit"> </FORM> __________ помогите с написанием этого upload.php... как и через какие переменныемне сохранить сразу три файла? Заранее сенькс :) |
массив $_FILES либо $HTTP_POST_FILES если php версии 4.1.0 или меньше
|
что-то типа:
copy($HTTP_POST_FILES['file_1'], "file.tmp"); так? или я что-то не догоняю? :/ |
Нет.
$_FILES['file_1']['name'] - имя файла на компе пользователя $_FILES['file_1']['type'] - миме тип файла $_FILES['file_1']['size'] - размер файла $_FILES['file_1']['tmp_name'] - времменное имя, которое можно использовать с функцией move_uploaded_file() $_FILES['file_1']['error'] - код ошибки. если все ок, то вроде 0... (php 4.2.0 и выше) |
так присвоить свое имя загруженному файлу?
move_uploaded_file($_FILES['file_1']['tmp_name'], "uploaded/temp.bak"); или я опять что-то путаю? ЗЫ Может проще будет дать пример? :) а то так можно долго в угадайки играть :( |
да именно так.
а пример есть в мануале хороший :) |
тогда еще вопросик... если я сделаю так:
move_uploaded_file($_FILES['file_1']['tmp_name'], "temp_1.bak"); как я понимаю, у меня на сервере создастя файл с именем temp_1.bak, который был залит пользователем... и в ту директорию, в которой я нахожусь сейчас. так? или надо указывать относительный путь? |
в текущую рабочую директорию льется файлик.
в общем ты прав :) |
Я писал в аналогичном случае примерно так:
$hisfile = $_FILES[$field]['name'][$k]; $thisfile = $_FILES[$field]['tmp_name'][$k]; .. move_uploaded_file ($thisfile, $mydir . '/' . $hisfile); (имена полей ввода типа FILE у меня сделаны массивом) |
Цитата:
|
тогда последний вопрос по загрузке... если пользователь в поле ввел ерунду. как мне это проверить?
if(is_uploaded_file($_FILES['file_1']['tmp_name'])){ move_uploaded_file($_FILES['file_1']['tmp_name'], "temp_1.bak"); } else{ echo "Нема фалов-то..." } так? :) |
Стоп. еще вопрос:
если у меня в рабочей директории уже есть файл temp_1.bak, он перезапишется на новый? |
Цитата:
Цитата:
|
супер! пошел писАть :) если че - я объявлюсь :))
|
| Часовой пояс GMT +4, время: 23:09. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.