Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Активные темы » PHP: Upload файлов на сервер.

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Kins



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
День добрый уважаемые.
Разьясните плиз, почему не происходит аплоад файлов на сервер?
Дано:  
- Apach+PHP4.3+MySQL+Win98 локально на машине, делается всё для локальной сети.
- файл upload.htm:
========================
<html>
 <head>
  <title>Загрузка файлов</title>
 </head>
 <body>
 
<form enctype="multipart/form-data" action="upl.php" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="200000">
Выбрать файл: <input type="file" name="userf">
<input type="submit" value="Послать">
</form>
 </body>
 </html>
=======================
- файл upl.php:
=====================
<title>
Получено из Формы.upload.HTM
</title>
 
<?php
/*
отладочная информация
echo $_FILES['userf']['name']."<br>"; //это для отладки смотрю
$ok=is_uploaded_file($_FILES['userf']['tmp_name']);//это для отладки смотрю
if ($ok=true) {
   echo "Истина<br>";
   }else{
   echo "Ложь<br>";
   }
echo $_FILES['userf']['tmp_name'];  
*/
 
 
if (is_uploaded_file($_FILES['userf']['tmp_name'])) {
  copy ($_FILES['userf']['tmp_name'], "/UPLOAD/");
   
} else {
   echo "Возможно файл не загружен. Filename: " . $_FILES['userf']['name'];
}
?>
=============================================
жму обзор, выбираю файл, жму Послать, upl.php отрабатывает, файл на сервер не приходит в tmp  не появляется ничего, в upload'e пусто
 
в PHP.ini проверил:
file_uploads = On
;upload_tmp_dir = это заремарено, но phpinfo() дает путь d:\appserv\temp,
а DocumentRoot в Апаче - d:\appserv\www\
 
Что еще смотреть?
Благодарю.
 





Убрал из названия "Помощи прошу." и добавил язык. — Svarga.

Всего записей: 132 | Зарегистр. 30-10-2003 | Отправлено: 07:58 30-03-2004 | Исправлено: Svarga, 12:35 30-03-2004
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Kins
лучше не
Цитата:
copy
а http://www.php.net/manual/en/function.move-uploaded-file.php
посмотри еще это
$_FILES['userfile']['error']
да и вообще.. сделай print_r($_FILES['userf']);

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 08:06 30-03-2004
Kins



Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Уряяя!!! заработала!!!
Ошибка моя тут:

Цитата:
  copy ($_FILES['userf']['tmp_name'], "/UPLOAD/");

путь destination я не правильно писал...
 
сделал так:
move_uploaded_file($_FILES['userf']['tmp_name'], $dirup."/upload/".$fname);
всё ОК.
Сенькс.

Всего записей: 132 | Зарегистр. 30-10-2003 | Отправлено: 10:50 30-03-2004 | Исправлено: Kins, 10:52 30-03-2004
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые подскажите что происходит?
 
Заливаю файл на сервер и не успеваю его скопировать - он моментально исчезает из папки /tmp.
В скрипте пробовал выводить имена и путь - всё имеется. В системе успел мельком заметить, что что-то проскакивает в /tmp - точно конечно можно отследить... (но скорее всего это нужный файл).
 
Что происходит и как залить файл? Пробовал и copy и move_uploaded_file - результат один. собственно файла-то нету на месте...
 
p.s. товарищи модераторы, ну и бардак у вас тут с темами... новые-то плодить тоже не охота по пустякам...

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 02:46 12-04-2011
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alukardd

Цитата:
товарищи модераторы, ну и бардак у вас тут с темами... новые-то плодить тоже не охота по пустякам

ну не плодите.. тематика вебпрограмминга очень обширная и ее не так просто собрать в отдельные темы.
 
антивирус проверьте свой на сервере, если есть.  
такое часто возникает потому, что он удаляет файлы
 
путь сохранения пробовали менять?

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 02:53 12-04-2011 | Исправлено: Cheery, 02:56 12-04-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
нету ни какого антивируса, на кой он там?) будущие файлы пользователей проверять что ли?..
Цитата:
 путь сохранения пробовали менять?
попробовал поменять настройку upload_tmp_dir - ни какого толку... Файл вроде как загружается error=0 имя имеет размер отдает и т.п. но скопировать не успевает...
 
если это критично, то система debian squeeze.

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 11:25 12-04-2011 | Исправлено: Alukardd, 11:41 12-04-2011
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alukardd
а код посмотреть можно? не должен php+apache удалять файл самостоятельно и сразу же.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:14 12-04-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
что именно вам скинуть?
в общем-то вот код формы и строка принимающего сценария сценария (строка стоит стоит вторая после считывание GET переменных, прямо перед этой строкой смотрел вывод print_r($_FILES['video']); - абсолютно нормальный) - массив $files = $HTTP_POST_FILES; (изначально что-то не читался просто $_FILES - мб где опечатался...)

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 20:46 12-04-2011
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alukardd

Цитата:
массив $files = $HTTP_POST_FILES; (изначально что-то не читался просто $_FILES - мб где опечатался...)

эм.. у вас какая версия PHP? HTTP_ уже давно не рекомендуется к использованию

Цитата:
move_uploaded_file($files['video']['tmp_name'],"/var/www/mltmt/");

ну дык, а кто будет давать конечное имя файлу??
пример
http://www.php.net/manual/en/features.file-upload.post-method.php
или вы говорите, что move_uploaded_file ругается на то, что файла нет?
он закачивается в /tmp изначально с временным именем, затем move_uploaded_file переносит его оттуда куда укажите и с тем именем, что укажите.


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:50 12-04-2011 | Исправлено: Cheery, 20:53 12-04-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Цитата:
эм.. у вас какая версия PHP? HTTP_ уже давно не рекомендуется к использованию  
5.3.3-7 with Suhosin-Patch
да говорю же что-то с _FILES не читалось.. скорее всего очепятка где-то была (щас опять его использую).
 
я конченое имя в тестах тоже указывал... щас попробовал еще раз - толку ни какого. Пути пробовал абсолютные и относительные...

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 21:17 12-04-2011 | Исправлено: Alukardd, 21:17 12-04-2011
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alukardd

Цитата:
щас попробовал еще раз - толку ни какого

так move_uploaded_file выдает ошибку? включите отображение всех ошибок

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:19 12-04-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
вроде не выдает ни чего)))
щас так в .htaccess
php_value error_reporting "E_ALL"
оно ведь?
 
еще раз проверил php.ini и время выполнения скрипта и размер пост запросов и память на скрипт всё в норме - к тому же на этом же сервер крутится мой многострадальный roundcube - и он прекрасно прикрепляет к письму любые файлы...

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 21:28 12-04-2011
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alukardd

Цитата:
щас так в .htaccess  
php_value error_reporting "E_ALL"  
оно ведь?  

в начале php файла просто
error_reporting(E_ALL);
ini_set('display_errors','On');
 
и вы не сказали - move_uploaded_file выдает ошибку или нет? если нет, и включены ошибки - значит перемещает


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:31 12-04-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
всё ошибки вывелись - да ппц, давал на директорию права 0640, вместо 0740 - забыл, что для директория без бита исполняемости не живет - сам налажал(((... Permission denied получал(
Спасибо
кстати почему из .htaccess файла не считалась настройка?

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 21:41 12-04-2011
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alukardd

Цитата:
кстати почему из .htaccess файла не считалась настройка?

ну потому, что еще display_errors может быть выключен

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:43 12-04-2011
Alukardd



Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
да нет включён... мб надо было писать ini_set(...), а не php_value

----------
Microsoft gives you windows, linuх gives you the whole house...
I've been using Vim for about 4 years now, mostly because I can't figure out how to exit it.

Всего записей: 6562 | Зарегистр. 28-08-2008 | Отправлено: 21:54 12-04-2011
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
мб надо было писать ini_set(...), а не php_value

это для php, а не для htaccess


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 22:07 12-04-2011
vs6262



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

https://www.w3schools.com/php/func_ftp_put.asp

Всего записей: 2188 | Зарегистр. 25-02-2013 | Отправлено: 17:32 25-11-2018
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262
ну и зачем это тут? речь шла об http загрузке, а не на ftp

Всего записей: 15038 | Зарегистр. 20-09-2014 | Отправлено: 20:20 25-11-2018
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Активные темы » PHP: Upload файлов на сервер.


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru