Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: закачка файла
 
 автор: admiral   (21.04.2009 в 11:37)   письмо автору
 
 

На локалке код работает, на хостиге нет.


<?
if (!empty($_FILES['upload']['name']))
 {
     
       
$tmp $_FILES['upload']['tmp_name'];
       
$t $_FILES['upload']['name'];
      
$ext explode(".",$t);
      echo 
"price.".$ext[1];
    
//echo $file = $_SERVER['DOCUMENT_ROOT']."/price.".$ext[1];
    
if(copy($tmp,"price.".$ext[1]))
    {
        
Header('Location: index.php');
    }  else echo 
"Ошибка";

 }
?>

  Ответить  
 
 автор: admiral   (21.04.2009 в 11:38)   письмо автору
 
   для: admiral   (21.04.2009 в 11:37)
 

Выводит Ошибка.

  Ответить  
 
 автор: Trianon   (21.04.2009 в 11:42)   письмо автору
 
   для: admiral   (21.04.2009 в 11:38)
 

Что написали - то и выводит.

  Ответить  
 
 автор: Trianon   (21.04.2009 в 11:41)   письмо автору
 
   для: admiral   (21.04.2009 в 11:37)
 

Здесь двадцать раз говорилось, что
1. начинать анализ массива $_FILES нужно не с $_FILES['....']['name'] , а с $_FILES['....']['error'] .
2. Функция copy в общем случае не копирует загружаемые на сервер файлы.

  Ответить  
 
 автор: admiral   (21.04.2009 в 11:46)   письмо автору
 
   для: Trianon   (21.04.2009 в 11:41)
 

Проделал print_r($_FILES)
Результат

Array
(
    [upload] => Array
        (
            [name] => test.rtf
            [type] => application/rtf
            [tmp_name] => /home/www/site/tmp/phpuROdM7
            [error] => 0
            [size] => 32487
        )

)

И никакой ошибки нет.

  Ответить  
 
 автор: admiral   (21.04.2009 в 11:47)   письмо автору
 
   для: Trianon   (21.04.2009 в 11:41)
 

>2. Функция copy в общем случае не копирует загружаемые на сервер файлы.
А что она тогда делает?

  Ответить  
 
 автор: Trianon   (21.04.2009 в 12:13)   письмо автору
 
   для: admiral   (21.04.2009 в 11:47)
 

http://php.net/copy

  Ответить  
 
 автор: admiral   (21.04.2009 в 12:40)   письмо автору
 
   для: Trianon   (21.04.2009 в 12:13)
 

Ну это понятно. Вы хотите сказать что данную функцию не рекомендутся использовать в данном случае?

  Ответить  
 
 автор: sim5   (21.04.2009 в 12:49)   письмо автору
 
   для: admiral   (21.04.2009 в 12:40)
 

Да. http://ru2.php.net/manual/ru/features.file-upload.post-method.php

  Ответить  
 
 автор: admiral   (22.04.2009 в 10:55)   письмо автору
 
   для: sim5   (21.04.2009 в 12:49)
 

Заместо cope использзовал move_uploaded_file результат от же.

<? if (!empty($_FILES['upload']['name'])) 
 { 
      
       
$tmp $_FILES['upload']['tmp_name']; 
       
$t $_FILES['upload']['name']; 
      
$ext explode(".",$t); 
      echo 
"price.".$ext[1]; 
    
//echo $file = $_SERVER['DOCUMENT_ROOT']."/price.".$ext[1]; 
    
if(move_uploaded_file($tmp,"price.".$ext[1])) 
    { 
        
Header('Location: index.php'); 
    }  else echo 
"Ошибка"

 } 
?>

Разъясните что я не так делаю?

  Ответить  
 
 автор: sim5   (22.04.2009 в 11:16)   письмо автору
 
   для: admiral   (22.04.2009 в 10:55)
 

Вы где это проверяете? И:
<?
if (!$_FILES['upload']['error']) {
   
//загрузка 
} else {
  
//работа над ошибками
}

  Ответить  
 
 автор: admiral   (22.04.2009 в 11:53)   письмо автору
 
   для: sim5   (22.04.2009 в 11:16)
 

>Вы где это проверяете?
Пробовал на локалке(денвер) - файл загружается.
Пробовал на сторонем хостинге - все нормально
А вот на мастерхосте не работает. Хоть убей, но с copy не один пример там не работает.
И файлы размером по 20 кб даже не загружает.

$_FILES['upload']['error'] показывает 0 errors

  Ответить  
 
 автор: sim5   (22.04.2009 в 11:58)   письмо автору
 
   для: admiral   (22.04.2009 в 11:53)
 

Значит запрещена загрузка файлов. Обратитесь к хостеру.

  Ответить  
 
 автор: Trianon   (22.04.2009 в 13:06)   письмо автору
 
   для: admiral   (22.04.2009 в 11:53)
 

в какой каталог Вы пытаетесь положить файл?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования