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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Исключение из списка файлов по расширению

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Viper
Отправлено: 22 Марта, 2010 - 13:41:50
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




есть такое
PHP:
скопировать код в буфер обмена
  1. $dir = @opendir($ScanDir);
  2.  
  3. if ($dir !== false) {
  4.         while (($file = @readdir($dir)) !== false) {
  5.                 $FullFileName = realpath($ScanDir.'/'.$file);
  6.                 if (is_file($FullFileName)) {
  7.                         set_time_limit(30);
  8.                         $ThisFileInfo = $getID3->analyze($FullFileName);
  9.                         getid3_lib::CopyTagsToComments($ThisFileInfo);
  10.  
  11.                         $file_ext = substr($ThisFileInfo['filenamepath'], strrpos($ThisFileInfo['filenamepath'], '.') +1);
  12.                         if ($file_ext == 'mp3' || $file_ext == 'jpg') {
  13.                                 echo 'mp3';
  14.                         } else {
  15.                                 echo 'over ext';
  16.                         }
  17.                 }
  18.         }
  19. }

затык в том, что если в папке присутствуют файлы с другими расширениями, то скрипт выводит в список и mp3 и jpg и другие... никак не могу понять где наступаю на грабли(ю)... нужно как-то либо отбрасывать другие расширения, либо делать фильтр...


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Champion Супермодератор
Отправлено: 22 Марта, 2010 - 13:52:18
Post Id



Активный участник


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


Помог: 57 раз(а)




Viper пишет:
Сообщений всего: 713
Дата рег-ции: Февр. 2007
Ты же знаешь, что тебя отправят к отладке) Выведи имена файлов, результат функции. Может быть дело в нижнем/верхнем регистре.
 
 Top
T-sh
Отправлено: 22 Марта, 2010 - 13:54:49
Post Id



Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Янв. 2010  
Откуда: Казахстан


Помог: 0 раз(а)




имхо, целесообразнее непосредственно до

PHP:
скопировать код в буфер обмена
  1.     $FullFileName = realpath($ScanDir.'/'.$file);


делать проверку на наличие/отсутствие в $file нужных расширений. обычным поиском в строке.
 
 Top
Viper
Отправлено: 22 Марта, 2010 - 14:13:26
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




Champion ну эт понятное дело ) просто проблема в том, что выводится все нормально. имена в виде 01.mp3 и 1204766254_soho_m8.jpg к примеру.

T-sh это конечно вариант, но ограничение скрипта.

тем более что в другом месте точно такая же проверка прекрасно работает.

вот к примеру список файлов из папки

CODE (htmlphp):
скопировать код в буфер обмена
  1. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/01.mp3
  2. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/02.mp3
  3. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/03.mp3
  4. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/04.mp3
  5. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/05.mp3
  6. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/06.mp3
  7. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/07.mp3
  8. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/08.mp3
  9. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/09.mp3
  10. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/10.mp3
  11. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/1204766254_soho_m8.jpg
  12. D:/WWW/htdocs/local/downloads/kamelia/(08.03.08) - M8 - mixed by dj Fashion/multikey.inf


т.е. нужно то всего... отбросить либо все, либо вывести в отдельный список.


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
DeepVarvar Супермодератор
Отправлено: 22 Марта, 2010 - 16:26:24
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




CODE (htmlphp):
скопировать код в буфер обмена
  1. if (eregi("[a-zA-Z0-p_-]*.jpg",$FullFileName)) { ... }
И все... Это для *.jpg.....
 
 Top
Viper
Отправлено: 23 Марта, 2010 - 07:42:01
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




всем спасибо. после долгих обмозговываний решил все же 1 раз просканировать папку и создать файл плейлиста.

DeepVarvar как вариант да, но функция не поддерживается уже в 5.3.0 и не будет её в 6. к тому же регулярка при проверке будет медленно работать имхо


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB