За последние 24 часа нас посетили 18686 программистов и 1702 робота. Сейчас ищет 901 программист ...

Проблема с загрузкой файла на сервер

Тема в разделе "Прочие вопросы по PHP", создана пользователем gexin, 21 июн 2013.

  1. gexin

    gexin Новичок

    С нами с:
    21 июн 2013
    Сообщения:
    3
    Симпатии:
    0
    Здравствуйте форумчане! Есть серьезная проблема загрузки файла на сервер (в данном случае аватар пользователя)
    Итак поехали:
    1. Сама форма загрузки изображения:
    Код (Text):
    1. <form action="users/avaload.php" method="POST" enctype="multipart/form-data">
    2.                         <input name="id" type="hidden" value="$myrow[id]">
    3.                         <p>
    4.                             <label>Загрузить аватар:<br></label>
    5.                             <input name="fupload" type="FILE">
    6.                         </p>
    7.                         <p>
    8.                             <input name="submit" type="submit" value="Загрузить">
    9.                         </p>
    10.                     </form>
    2. php код загрузки изображения:
    Код (Text):
    1. // проверяем аватар
    2.     if (!empty($_FILES['fupload']['name'])) {
    3.         $fupload = $_FILES['fupload']['name']; $fupload=trim($fupload);
    4.         if (($fupload=='') or empty($fupload)) {
    5.             unset($fupload);
    6.         }
    7.     }
    8.    
    9.     if (!isset($fupload) or empty($fupload) or ($fupload=='')) {    // если нет авы то ставим по-умолчанию
    10.         $avatar = "images/noava.jpg";
    11.     }
    12.     else {              // грузим аватар в наш руткит
    13.         $path_ava_directory = $_SERVER['DOCUMENT_ROOT']."/oblya/images/avatar/";
    14.         if (preg_match("/[.](JPEG)|(jpeg)|(JPG)|(jpg)|(gif)|(GIF)|(png)|(PNG)$/i",$_FILES['fupload']['name'])) {
    15.             $filename = $_FILES['fupload']['name'];
    16.             $avatar = $path_ava_directory.$filename;
    17.             move_uploaded_file($filename,$avatar);
    18.         }
    19.     else {
    20.                     exit ("Аватар должен быть в формате <strong>JPG,GIF или PNG</strong>");
    21.         }
    22.     }
    23.    
    24.    
    25.     include("../login/bd.php");         // загружаем путь авы в базу
    26.     $result2 = mysql_query("UPDATE users SET avatar = '$avatar' WHERE id = $_POST[id]",$db) or die(mysql_error());
    27.     if ($result2=='TRUE') {
    28.     echo "<html><head><meta http-equiv='Refresh' content='0;URL=../mypage.php?id=$_POST[id]'></head></html>";
    29.     }
    3. В базу пишет норм (дай бог каждому:))
    4. каталоги изображений /images и /avatar имеют доступ drwxrwxrwx
    5. Файлы для закачки и 200 кбайт не превышают
    6. Хостинг reg.ru
    7. Администрация разводит руки
    8. Загрузка проходит успешно без ошибок, но файл на сервер не перемещает. Что делать?
     
  2. gexin

    gexin Новичок

    С нами с:
    21 июн 2013
    Сообщения:
    3
    Симпатии:
    0
    Может быть кто шарит поможет?
     
  3. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.819
    Симпатии:
    1.333
    Адрес:
    Лень
    указывайте tmp файл
     
  4. gexin

    gexin Новичок

    С нами с:
    21 июн 2013
    Сообщения:
    3
    Симпатии:
    0
    Да все верно проблема решена tmp файлом. Спасибо!