Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Ошибка filesize()
Форумы портала PHP.SU » » Работа с файловой системой и файлами » Ошибка filesize()

Страниц (1): [1]
 

1. im-sanek - 12 Сентября, 2012 - 13:11:19 - перейти к сообщению
Цитата:
filesize(): stat failed for 123.rar in /var/www/site/loads/index.php on line 16

вот такая вот ошибка выдается при определении размера файла
строка 16:

подскажите, как добиться нужного результата?
2. Viper - 12 Сентября, 2012 - 13:20:04 - перейти к сообщению
im-sanek а путь до файла проверить не? Вера не позволяет?
3. im-sanek - 12 Сентября, 2012 - 13:27:57 - перейти к сообщению
путь до файла нормальный. такое наблюдаю, если и полностью прописать путь до файла.
выложу полностью фрагмент.
CODE (htmlphp):
скопировать код в буфер обмена
  1. echo '<b>Файлы:</b><br><br>';
  2. $dir = opendir ("./uploads/files/");
  3.  
  4. while ($files=readdir($dir))
  5. {
  6.  if (($files!=".")&&($files!=".."))
  7. {
  8.         $fsize=filesize($files);
  9.     $i=0;
  10.     $name=array("B","kB","MB");
  11.     while($fsize>=1024) { $fsize/=1024; $i++; }        
  12.     echo '<a href="./uploads/files/'.$files.'">'.$files.'</a> ('.round($fsize,2).' '.$name[$i]; echo ')<br>';
  13.  }
  14. }
  15.  
  16. closedir($dir);

(Добавление)
строка 16 теперь строка 8
4. Green - 12 Сентября, 2012 - 13:46:58 - перейти к сообщению
PHP.SU, описание функции readdir пишет:

/* Именно этот способ чтения элементов каталога является правильным. */
while (false !== ($file = readdir($handle))) {
echo "$file\n";
}

/* Этот способ НЕВЕРЕН. */
while ($file = readdir($handle)) {
echo "$file\n";
}

Быть может дело в этом? Я точно не знаю, ибо всегда использую именно первый способ.
Ваш код можно сократить кстати, если использовать glob().
5. im-sanek - 12 Сентября, 2012 - 14:28:03 - перейти к сообщению
Green пишет:
Ваш код можно сократить кстати, если использовать glob().
попробовал, как ни странно помогло - и код сократился, и все заработало!
спасибо, проблема решена.
(Добавление)
ПС: кнопку спасибо нажал, но сообщений моих недостаточно, извини. ;)

 

Powered by ExBB FM 1.0 RC1