Видео-каталог 1.1

PHP-скрипт для видео-каталога

FAQ (Часто задаваемые вопросы)

Содержание

  1. Общие вопросы
    1. Как включить доступ в видео каталог без регистрации?
    2. Как формируется раздел "Рекомендуем"?
  2. Вопросы по установке и настройке
    1. Неправильно отображаются русские буквы
    2. Что-то работает не так, но ошибок не выводит. Как диагностировать ошибки?
    3. Я открываю админку, а в разделе "Поступления" ничего нет
    4. Я открываю админку, а в разделе "Поступления" файлы на русском не видит
    5. Я открываю админку, а в разделе "Поступления" только 20 фильмов (а их больше)
    6. Файлы находятся на сетевом диске (Windows), но в админке не отображаются
  3. Вопросы связанные с работой и интерфейсом
    1. У меня все фильмы каждый в своей папке. Как быть?
    2. Я нажал на "Скрыть (навсегда)", как вернуть назад?
    3. Несколько файлов одного фильма (сериала) не были определены правильно и представлены, как различные фильмы. Что делать?
    4. Что за кнопки "спарсить", "автопоиск" и т.п. в самом верху таблицы со списком фильмов?
    5. До этого все работало, и внезапно интерфейс завис и не реагирует на нажатия
    6. У некоторых фильмов не генеруется информация о файле
    7. В закладке "Закачка дополнений" кликаю на загрузку персоналий и постеров, а их количество не уменьшается
    8. Не генерируются скриншоты из фильмов
    9. Все кадры фильма получаются чёрные
    10. Что такое найти похожий фильм?

Общие вопросы

Как включить доступ в видео каталог без регистрации?

Создать пользователя guest/guest и выставить ему группу 0.

Как формируется раздел "Рекомендуем"?

Раздел формируется при сравнении оценок пользователей друг с другом (т.н. коллаборативный фильтр). Кратко работу фильтра можно описать так: предполагается, что, если один человек оценил фильмы A, B, C и D, то другому человеку, оценившему также A, B и C, порекомендуется посмотреть D. Чем больше выставлено оценок (минимально нужно 4), тем правильнее должен работать фильтр. Оцененные фильмы уже не будут отображаться в этом разделе - их место займут другие фильмы.

Вопросы по установке и настройке

Неправильно отображаются русские буквы

Распространенные проблемы с русскими буквами и методы их решения

Что-то работает не так, но ошибок не выводит. Как диагностировать ошибки?

Чтобы увидеть ошибки нужно:

1. включить показ ошибок в файле конфигурации php.ini:

 log_errors = On
 error_log = /path/to/php-error.log

2. проделать определенные действия (в правильности работы которых возникли сомнения) и посмотреть содержимое php-error.log

либо

2. Нажать в Панеле управления Ctrl+~. Сверху появится консоль, в которую будут выводиться ошибки и др. данные.

Я открываю админку, а в разделе "Поступления" ничего нет

Убедитесь, что имена файлов и папок написаны только латинскими буквами (для диагностики). Причина может быть в неправильном указании пути для индексирования в файле конфигурации в строке $config['rootdir'][]. Также проблема может быть в том, что скрипт не может получить доступ к указанной папке. Это может быть из-за отсутствия прав на папку, либо в случаи неверного указания владельца папки. Проверьте не работает ли PHP в Safe Mode. Если да, то нужно проставить на файлах и папках ваших фильмов такого же владельца, как и на скрипте. Также убедитесь что параметр php open_basedir позволяет обращаться к папке с фильмами.

Я открываю админку, а в разделе "Поступления" файлы на русском не видит

Проблема с кодировками базы данных

Распространенные проблемы с русскими буквами и методы их решения

Я открываю админку, а в разделе "Поступления" только 20 фильмов (а их больше)

См. параметр $config['maxincoming'] файла конфигурации

Файлы находятся на сетевом диске (Windows), но в админке не отображаются

1. Обеспечить доступ пользователя от которого запускается скрипт доступом к сетевому диску, например так:

1.1. Создать в системе пользователя apache

1.2. Добавить его в группу Администраторы

1.3. Запустить от него Apache

2а. Использовать для доступа записи вида:

 $config["rootdir"][] = "//10.10.10.10/films/";
 /*...*/
 $config["source"][] = "//10.10.10.10/films/";
 $config["smb"][] = "//10.10.10.10/films/";
 $config["ftp"][] = "ftp://10.10.10.10/films/";

2б. Если скрипт по-прежнему "не видит" сетевой диск, а система "видит", то нужно попробовать примонтировать диск специально созданным и запущенным от Apache скриптом:

 <?php 
 $location = "\\\\10.10.10.10\\films";
 $user = "user";
 $pass = "password";
 $letter = "Z";
 // Map the drive
 $cmd = "net use {$letter}: \"{$location}\" $pass /user:{$user} /persistent:no 2>&1";
 echo $cmd . "\n";
 passthru($cmd);
 // Open the directory
 $dir = "{$letter}:/";
 $dh = opendir($dir);
 $files = array();
 while (false !== ($filename = readdir($dh))) {
     $files[] = $filename;
 }
 var_dump($files);
 ?>

И после этого использовать для доступа запись вида:

 $config["rootdir"][] = "Z:/";

Вопросы связанные с работой и интерфейсом

У меня все фильмы каждый в своей папке. Как быть?

Обрабатывать следует конечные папки как фильм (т.е. не нужно ее раскрывать). Все файлы внутри нее будут относится к одному фильму (обрабатываться и импортироваться)

Я нажал на "Скрыть (навсегда)", как вернуть назад?

Придётся открыть базу данных и найти соответсвующую папку в таблице incoming и изменить значение Hide на 0.

Несколько файлов одного фильма (сериала) не были определены правильно и представлены, как различные фильмы. Что делать?

Возможны следующие варианты:

  • нажать на один из двух файлов, обработать информацию по фильму и импортировать его в БД с этим файлом. Затем через пункт меню "Редактор фильмов" добавить второй файл.
  • правильно настроить multipatern (в файле конфигурации)
  • поместить все части фильма в одну папку и обрабатывать и импортировать эту папку
  • если отдельные части поступили позже или были не замечены ранее, и по названию они определились как дубликаты, их можно приаттачить к основному описанию фильма (нажать <- Присоединить файлы как дополнение/зеркало к этому фильму)

Что за кнопки "спарсить", "автопоиск" и т.п. в самом верху таблицы со списком фильмов?

Кнопки Данные кнопки выполняют теже операции, что и их аналоги в меню работы с фильмом, только в глобальном плане. Т.е. они выполняют парсинг по сайтам или поиск постеров для всех фильмов в списке сразу (см. раздел описание работы).

До этого все работало, и внезапно интерфейс завис и не реагирует на нажатия

Закончилась сессия в php. Попробуйте обновить страницу в браузере. Возможно следует увеличить время жизни сессии - прочитать об этом можно в справке по php.

У некоторых фильмов не генеруется информация о файле

Возможно скрипт не может добраться до фильма из-за вложенных папок (например, DVD фильм с папкой VIDEO_TS). Для того, чтобы добраться о фильма, нужно сделать папку узлом (левая кпонка в строке названия фильма). Также фильм может быть в специфичном формате и не удаётся получить информацию о нём.

В закладке "Закачка дополнений" кликаю на загрузку персоналий и постеров, а их количество не уменьшается

Скорее всего нет прав на запись в соответсвующие папки скрипта. Установите права 777 на папки posters, photos, bigposters, smallposters.

Не генерируются скриншоты из фильмов

Проверьте правильность файле конфигурации и окружения в соответствии со справкой по генерации кадров из фильмов.

Проверьте работу mplayer'а. Попробуйте запустить его из консоли. Например, такой командой (пути изменить на свои)

 /usr/local/bin/mencoder -frames 1 -ovc lavc -lavcopts vcodec=mpeg4 -nosound -o /var/видео.avi /var/ftp/1.avi -ss 1370 

Проверьте, чтобы были права записи на папку temp, указанную в файле конфигурации.

Убедитесь, что у вас в системе установлена поддержка jpeg формата (командой mplayer -vo help). Если нет, то нужно установить пакет libjpeg.

Все кадры фильма получаются чёрные

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

Что такое найти похожий фильм?

Поиск похожего фильма основан на статистике скачиваний фильмов.

Предположим есть 2 фильма

 Люди икс 2 - 30 закачек
 Люди икс   - 45 закачек (из них допустим 13 смотрели Люди икс 2)

Тогда в фильме "Люди икс 2" (возможно помимо других) при поиске похожего фильма отобразится следущее:

 Похожие фильмы: Люди Икс (его смотрели 45%, а всего это 29% аудитории)
 ...
 (13/30 = 45%, 13/45 = 29%)

Для исключения "хитов" результат сортируется по второму параметру процентов. Поиск недостаточно хорошо работает при количестве скачиваний менее 10-15 и для "верхушки" хитов (они указывают как правило друг на друга).