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

Форум PHP

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

 

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

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

тема: filesize
 
 автор: Dima1999   (02.09.2005 в 22:09)   письмо автору
 
 

if ($which == "news")
{
if ((filesize($file)>20480) || (filesize($file) == "0"))
{
echo "<table bgcolor=\"#EAEAEA\" cellspacing=1 cellpadding=4 width=\"90%\" align=center style=\"border:1px solid #6C93EC\"><tbody>";
echo "<tr><td><u>Проблема при опубликовании новости:</u><br><br>";
echo "Размер файла больше, чем 20 Кб или равен нулю<br>";
echo "<a class=link href=\"events.php?upload=news\">Попробовать заново</a>";
echo "</td></tr></tbody></table><br>";
}
elseif (strlen($file) == "0")
{
echo "<table bgcolor=\"#EAEAEA\" cellspacing=1 cellpadding=4 width=\"90%\" align=center style=\"border:1px solid #6C93EC\"><tbody>";
echo "<tr><td><u>Проблема при опубликовании новости:</u><br><br>";
echo "Вы не ввели название файла<br>";
echo "<a class=link href=\"events.php?upload=news\">Попробовать заново</a>";
echo "</td></tr></tbody></table><br>";
}
else
{
$new_file = "/usr/whitelight/news/".substr($file,strlen($file)-10);

$copy = @copy("$file","$new_file");
if (!@$copy)
{
echo "<table bgcolor=\"#EAEAEA\" cellspacing=1 cellpadding=4 width=\"90%\" align=center style=\"border:1px solid #6C93EC\"><tbody>";
echo "<tr><td><u>Проблема при опубликовании новости:</u><br><br>";
echo "Не удалось скопировать файл на сервер (проблемы на сервере)<br>";
echo "<a class=link href=\"events.php?upload=news\">Попробовать заново</a>";
echo "</td></tr></tbody></table><br>";
}
else
{
echo "<table bgcolor=\"#EAEAEA\" cellspacing=1 cellpadding=4 width=\"90%\" align=center style=\"border:1px solid #6C93EC\"><tbody>";
echo "<tr><td><u>Новость успешно опубликована</u>";
echo "</td></tr></tbody></table><br>";
echo "<meta http-equiv=\"refresh\" content=\"3;url=events.php\">";
}
}
}

Дома все работает (кроме копирования =). На сервере же выдается ошибка

Warning: filesize(): Stat failed for C:\\Documents and Settings\\CA\\Рабочий стол\\2004.12.21 (errno=2 - No such file or directory) in /www/wl/htdocs/admin/events.php on line 86

Warning: filesize(): Stat failed for C:\\Documents and Settings\\CA\\Рабочий стол\\2004.12.21 (errno=2 - No such file or directory) in /www/wl/htdocs/admin/events.php on line 86

(я гружу файл с рабочего стола). В чем проблема? Форма - input type=file

   
 
 автор: cheops   (03.09.2005 в 01:41)   письмо автору
 
   для: Dima1999   (02.09.2005 в 22:09)
 

Изображение следует брать во временной директории, путь к временному файлу доступен в суперглобальном массиве $_FILES['file']['tmp_name']. Пример upload-а файла можно посмотреть в примере по ссылке http://www.softtime.ru/scripts/upload.php

   
 
 автор: Dima1999   (03.09.2005 в 13:22)   письмо автору
 
   для: cheops   (03.09.2005 в 01:41)
 

Понял.
А что такое $_FILES[".."]["tmp_name"] и $_FILES[".."]["name"] ???

   
 
 автор: bartman   (03.09.2005 в 13:44)   письмо автору
 
   для: Dima1999   (03.09.2005 в 13:22)
 

Читаем ман: http://ru.php.net/manual/ru/features.file-upload.php

   
 
 автор: cheops   (03.09.2005 в 13:47)   письмо автору
 
   для: Dima1999   (03.09.2005 в 13:22)
 

$_FILES[".."]["tmp_name"] - это путь к временному файлу, куда его помещает сервер при загрузки с машины посетителя (имя файла тоже временное, поэтому его необходимо переименовывать при перемещении функцией copy)
$_FILES[".."]["name"] - это исходное имя файла.

   
 
 автор: Dima1999   (03.09.2005 в 17:04)   письмо автору
 
   для: cheops   (03.09.2005 в 13:47)
 


 if (($_FILES["file"]["size"]>20480) || ($_FILES["file"]["size"] == "0"))
    {
      echo "<table bgcolor=\"#EAEAEA\" cellspacing=1 cellpadding=4 width=\"90%\" align=center style=\"border:1px solid #6C93EC\"><tbody>";
      echo "<tr><td><u>Проблема при опубликовании новости:</u><br><br>";
      echo "Размер файла больше, чем 20 Кб или равен нулю<br>";
      echo "<a class=link href=\"events.php?upload=news\">Попробовать заново</a>";
      echo "</td></tr></tbody></table><br>";
    }
    else
    {
      if (copy($_FILES['file']['tmp_name'],"/www/wl/htdocs/ru/news/".$_FILES['file']['name']))
      {
        echo "yes";
      }
      else
      {
        echo "no";
      }
    }
  }


Сделал все, как вы сказали, но теперь сервер не выдает абсолютно ничего. Даже ошибок. И не копирует. Может дело в настройках пхп??? Могу приложить phpinfo сервера

ЗЫ. И кстати на размер файла реакция тоже ноль
ЗЫ2. И самое главное - переменной $_FILES["file"] - вообще нет!!! (проверил isset)

   
 
 автор: cheops   (03.09.2005 в 23:32)   письмо автору
 
   для: Dima1999   (03.09.2005 в 17:04)
 

Хм... а HTML-форма как выглядит?

   
 
 автор: Dima1999   (04.09.2005 в 01:08)   письмо автору
 
   для: cheops   (03.09.2005 в 23:32)
 


  if ($upload == "news")
  {
    echo "<form method=POST action=\"events.php\">";
    echo "<input type=hidden name=which value=\"news\">";
    echo "<table bgcolor=\"#EAEAEA\" cellspacing=1 cellpadding=4 width=\"90%\" align=center><tbody>";
    echo "<tr bgcolor=\"#FFFFFF\"><td>Файл: </td><td width=230><input type=file name=file></td><td><input type=submit name=action value=\"Опубликовать\"></td></tr></tbody></table></form>";    
  }


Обработчик - в этом же файле. Может дело в enctype??? Вроде на сайте ПХП эта штука была в форме...

   
 
 автор: Dima1999   (04.09.2005 в 02:15)   письмо автору
 
   для: Dima1999   (04.09.2005 в 01:08)
 

Все, извиняюсь, все дело и было в этом enctype... Правда появились другие проблемы, но об этом в другой теме =). Домашний Апач лучше сервера в сто раз.

   
Rambler's Top100
вверх

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