[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Функция copy()
DmitryOpalev
Объясните толком, как копироваь файл?
например:
<input type='file' name='file'>
<input
type='submit'>

Тогда в php будет:

<?php
...
$file = $_POST['file'];
copy($file, "images/$file");
...

?>

Но вылезает ошибка. В чем она???



Спустя 8 минут, 23 секунды (2.10.2010 - 22:07) Lenarfate написал(а):
какая ошибка

Спустя 36 секунд (2.10.2010 - 22:08) arvitaly написал(а):
Миллион же примеров
<form method="POST" enctype="multipart/form-data">
<
input type="file" name="f" /><input type="submit" />
</
form>
<?php
if (!empty($_FILES['f']))
{
if (!move_uploaded_file($_FILES['f']['tmp_name'],"images/" . $_FILES['f']['name']))
{
die("Все плохо");
}
die('Ура, все хорошо. Ссылка на закаченный файл - <a href="images/' . $_FILES['f']['name'] . '">' . $_FILES['f']['name'] . '</a>');
}
?>

Спустя 4 минуты, 56 секунд (2.10.2010 - 22:13) DmitryOpalev написал(а):
Чем copy() не подходит?
У меня из этого вообще ничего не получаеться...

Спустя 49 минут, 1 секунда (2.10.2010 - 23:02) Mizka написал(а):
Цитата
Чем copy() не подходит?
У меня из этого вообще ничего не получаеться...

ты файл берешь с массива $_пост, а надо с массива $_фаилс

Спустя 8 часов, 10 минут, 53 секунды (3.10.2010 - 07:13) kirik написал(а):
Цитата (DmitryOpalev @ 2.10.2010 - 14:13)
Чем copy() не подходит?

Подходит, только так лучше не делать.
При загрузке файла на сервер посредством формы php сначала загружает файл во временную папку с временным названием (как правило это папка /tmp). Так вот в случае с copy мы просто копируем картинку к себе, а во временной папке она остается. При этом большое количество загружаемых файлов быстро забьют диск и вероятно убьют систему (придется ребутаться, или еще хуже чистить темп руками).
Тем более функция move_uploaded_file специально предназначена для загрузки файлов через форму - она проверяет что файл действительно загружен через форму методом post и это никакой не левый файл, который пытается подсунуть хацкер.

Спустя 2 часа, 48 минут, 57 секунд (3.10.2010 - 10:02) DmitryOpalev написал(а):
А обязательна ли эта строчка:
Цитата
enctype="multipart/form-data"

И что она делает?

Спустя 1 час, 22 минуты, 50 секунд (3.10.2010 - 11:24) Michael написал(а):
эта строчка обязательны для форм, в которых загружаются файлы.
читай:
http://stepbystep.htmlbook.ru/?id=24


_____________
Курс валют
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.