<?php
$name = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
move_uploaded_file($tmp_name, $_SERVER['DOCUMENT_ROOT'].$name);
echo "ok.";
echo '<br />';
echo '<br />';
?>
<form action="index.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file" />
<br />
<br />
<input type="submit" value="Submit" />
</form>
Загружаю страницу в браузере, выбираю файл, нажимаю "Submit", скрипт говорит "ok.", но файл никуда не загружается. А должен в каталог с файлом index.php. В чём ошибся?
Спустя 7 минут, 24 секунды (5.07.2011 - 12:49) linker написал(а):
$_SERVER['DOCUMENT_ROOT'] . '/' . $name
Спустя 1 минута, 15 секунд (5.07.2011 - 12:50) Игорь_Vasinsky написал(а):
move_uploaded_file($tmp_name, $_SERVER['DOCUMENT_ROOT']."/".$name);
и не плохо бы сначала использовать is_uploaded();- в моём журнале есть запись-на примере загрузки картинки.
Спустя 20 минут, 21 секунда (5.07.2011 - 13:10) ИНСИ написал(а):
Цитата |
и не плохо бы сначала использовать is_uploaded(); |
Я бы не советовал использовать эту функцию. Она кажется была изменена после 4 версии PHP и работать не будет.
Спустя 9 минут, 36 секунд (5.07.2011 - 13:20) alex455 написал(а):
Отредактировал:
Всё равно не работает. Выдаёт "ok.", но ничего в каталог не загружается.
<?php
$name = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
move_uploaded_file($tmp_name, $_SERVER['DOCUMENT_ROOT']."/".$name);
echo "ok.";
echo '<br />';
echo '<br />';
?>
<form action="index.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file" />
<br />
<br />
<input type="submit" value="Submit" />
</form>
Всё равно не работает. Выдаёт "ok.", но ничего в каталог не загружается.
Спустя 11 минут, 18 секунд (5.07.2011 - 13:31) linker написал(а):
Очень и очень давно, функция move_uploaded_file() сама научилась делать is_uploaded_file().
Спустя 1 минута, 5 секунд (5.07.2011 - 13:32) DySprozin написал(а):
alex455
что такой код выдает:
что такой код выдает:
<?php
$name = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
echo 'name: '.$name.'<br>';
echo 'tmp_name: '.$tmp_name.'<br>';
echo 'loaded: '.move_uploaded_file($tmp_name, $_SERVER['DOCUMENT_ROOT']."/".$name).'<br>';
?>
<form action="index.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file" />
<br />
<br />
<input type="submit" value="Submit" />
</form>
Спустя 1 минута, 2 секунды (5.07.2011 - 13:33) linker написал(а):
if ($_FILES['file']['error'])описание номера ошибки можно найти в официальном мануале по PHP.
die('Произошла ошибка при загрузке файла. Номер ошибки: ' . $_FILES['file']['error']);
Спустя 5 минут, 33 секунды (5.07.2011 - 13:39) alex455 написал(а):
DySprozin,
Файл загрузился.
name: SHP2700 технические характеристики (rus).pdf
tmp_name: /tmp/phpr1Jf3Z
loaded: 1
Файл загрузился.
Спустя 3 минуты, 48 секунд (5.07.2011 - 13:43) alex455 написал(а):
DySprozin,
а вот mp4-файл не загружается.
linker,
ошибок никаких не выдаёт.
а вот mp4-файл не загружается.
linker,
ошибок никаких не выдаёт.
Спустя 41 секунда (5.07.2011 - 13:43) DySprozin написал(а):
Цитата |
Всё равно не работает. |
Цитата |
Файл загрузился. |
мистика
;;а вот mp4-файл не загружается.
что мой код выдает?
Спустя 2 минуты, 50 секунд (5.07.2011 - 13:46) alex455 написал(а):
Вот сейчас попробовал загрузить FLV, неудачно, вывод:
name: TEST 1.flv
tmp_name:
loaded:
Спустя 1 минута, 25 секунд (5.07.2011 - 13:47) alex455 написал(а):
Попробовал с mp4, ничего не загрузилось, вывод:
name:
tmp_name:
loaded:
Спустя 43 секунды (5.07.2011 - 13:48) Игорь_Vasinsky написал(а):
вот is_uploaded() и проверяет - загружен ли файл во временную директорию или нет.
вообще по умолчанию у меня на денвере макс. размер файла был 2 мб.
вообще по умолчанию у меня на денвере макс. размер файла был 2 мб.
Спустя 50 секунд (5.07.2011 - 13:49) Игорь_Vasinsky написал(а):
вот это для чего те написали?
if ($_FILES['file']['error'])
if ($_FILES['file']['error'])
Цитата |
die('Произошла ошибка при загрузке файла. Номер ошибки: ' . $_FILES['file']['error']); |
Спустя 3 минуты, 5 секунд (5.07.2011 - 13:52) linker написал(а):
В php.ini смотреть директивы post_max_size и upload_max_filesize, если размер загружаемого файла превышает любое значение из этих двух директив, то будут ошибки при загрузке.
Спустя 16 минут, 21 секунда (5.07.2011 - 14:08) alex455 написал(а):
Цитата |
Произошла ошибка при загрузке файла. Номер ошибки: 1 |
Исправил max_file_size до 2000 MB.
Код страницы:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<?php
$name = $_FILES['file']['name'];
$tmp_name = $_FILES['file']['tmp_name'];
if ($_FILES['file']['error'])
die('Произошла ошибка при загрузке файла. Номер ошибки: ' . $_FILES['file']['error']);
echo 'name: '.$name.'<br>';
echo 'tmp_name: '.$tmp_name.'<br>';
echo 'loaded: '.move_uploaded_file($tmp_name, $_SERVER['DOCUMENT_ROOT']."/".$name).'<br>';
?>
<form action="index.php" method="POST" enctype="multipart/form-data">
<input type="file" name="file" />
<br />
<br />
<input type="submit" value="Submit" />
</form>
</body>
</html>
Но это не решило проблемы, многие файлы по-прежнему не загружаются, БЕЗ ОШИБОК и ВЫВОДА ИНФОРМАЦИИ.
Спустя 15 секунд (5.07.2011 - 14:09) ИНСИ написал(а):
Игорь_Vasinsky ты прочел сообщения выше?
Цитата |
Я бы не советовал использовать эту функцию. Она кажется была изменена после 4 версии PHP и работать не будет. |
Цитата |
Очень и очень давно, функция move_uploaded_file() сама научилась делать is_uploaded_file(). |
Спустя 4 минуты, 59 секунд (5.07.2011 - 14:14) alex455 написал(а):
Вроде, заработало... Изменил обе опции
post_max_size
и
upload_max_filesize
Спасибо за помощь.
post_max_size
и
upload_max_filesize
Спасибо за помощь.
Спустя 2 минуты, 25 секунд (5.07.2011 - 14:16) linker написал(а):
alex455
Я говорил сразу проверить обе директивы.
Я говорил сразу проверить обе директивы.