Перейти к содержимому

Реферальная программа Мегаплана

Партнерская программа Kredov

  • Закрытая тема Тема закрыта

Ошибка загрузки файла

#11 gaaarfild

gaaarfild
  • Пользователь
  • 596 сообщений
  • Репутация: 0
0

Отправлено 22 Март 2010 - 12:54

Форму HTML-то скинешь?
  • 0

#12 yury

yury
  • Пользователь
  • 629 сообщений
  • Репутация: 176

Отправлено 22 Март 2010 - 13:02

Scream,
как вы думаете, где этот файл?
Если вы полагаете, что где-то в каталоге public_html, то вы ошибаетесь: относительный путь для PHP он от корня сервера отсчитывается, а не от корня вашего сайта.
Короче, правильно либо писать полный путь, а не относительный, либо так:

$upfiledir1 = $_SERVER['DOCUMENT_ROOT'] . "/files/name.jpg";


  • 0

#13 gaaarfild

gaaarfild
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 22 Март 2010 - 13:04

насколько я знаю, относительный путь в PHP отсчитывается от файла исполняемого, который прописан в браузере. Всю жизнь так работаю и все работает.
  • 0

#14 Scream

Scream
    Topic Starter
  • Пользователь
  • 42 сообщений
  • Репутация: 0

Отправлено 22 Март 2010 - 13:14

gaaarfild, я знаю точно так же!
yury, Все равно та же ошибка!
  • 0

#15 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 22 Март 2010 - 19:25

Scream, покажите нам форму, меня терзают смутные сомнения...
  • 0

#16 gaaarfild

gaaarfild
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 22 Март 2010 - 22:46

Меня тоже форма терзает. =)
  • 0

#17 Scream

Scream
    Topic Starter
  • Пользователь
  • 42 сообщений
  • Репутация: 0

Отправлено 23 Март 2010 - 01:47

Вот форма:
<form ENCTYPE="multipart/form-data" action="upload.php?type=ava" method="POST">
<INPUT NAME="file1" style="border: 1px solid $dddddd; padding: 0px;" TYPE="file">
<input type="hidden" size="32" name="name" value="test">
<input type="submit" name="submit" value="Сохранить">
</form>



Файл upload.php
<?php
if($_GET['type']=='ava'){
$name=$_POST['name'];
$upfiledir1 = $_SERVER['DOCUMENT_ROOT'] . "/files/ava_$name.jpg";

if($_FILES["file1"]["size"] > 1024*100)
{
echo ("Размер файла превышает 100Kb");
exit;
}
if(empty($_FILES['file1']['tmp_name'])) {
if(copy($_FILES["file1"]["tmp_name"], $upfiledir1)) {
echo("Файл успешно загружен<br>");
} else {
echo("Ошибка загрузки файла $upfiledir1 ");
}
} else {
echo"Херня дело";
}
}
?>



Мне сказано "Херня дело" :P
  • 0

#18 gaaarfild

gaaarfild
  • Пользователь
  • 596 сообщений
  • Репутация: 0

Отправлено 23 Март 2010 - 10:49

<?php
if($_GET['type']=='ava'){
$name=$_POST['name'];
$upfiledir1 = "files/ava_$name.jpg";

if($_FILES["file1"]["size"] > 1024*100)
{
echo ("Размер файла превышает 100Kb");
exit;
}
if(copy($_FILES["file1"]["tmp_name"], $upfiledir1)) {
echo("Файл успешно загружен<br>");
} else {
echo("Ошибка загрузки файла $upfiledir1 ");
}
}
?>


Нафига эта проверка empty()??? Тебе недостаточно ошибки копирования?
Вот так напиши и, конечно же, не забудь создать папку files.
  • 0

#19 Scream

Scream
    Topic Starter
  • Пользователь
  • 42 сообщений
  • Репутация: 0

Отправлено 23 Март 2010 - 12:40

Все работает! Спасибо!


  • 0

#20 ZiTosS

ZiTosS
  • Пользователь
  • 5 148 сообщений
  • Репутация: 8

Отправлено 28 Март 2010 - 17:50

Scream, тему закрываю
  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru