Тема: Голосование за трек + ТОП
Всем привет, пытался я организовать голосование за трек+ТОП по этой статье http://habrahabr.ru/post/131116/. Может кто поможет ?
Первый русскоязычный форум посвященный интернет-радиовещанию
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Всем привет, пытался я организовать голосование за трек+ТОП по этой статье http://habrahabr.ru/post/131116/. Может кто поможет ?
Получается все поставил, установил все bash скрипты проверил выполняются, в БД все треки записываются. (Файл id.txt нужен для голосования за трек) Но в файл id.txt не записывается id текущего трека с БД. Может поможете.
Проверить права, пути, работают ли скрипты что в кроне
Все проверил права стоят 777, пути все правильные.
запуск скрипта icecast_status.php должен создать нужный файл, если не создаст проблема в скрипте или в правах, если создаст - проблема в пути в самом crontab
Он создал этот файл но там пусто.
тогда копать сюда
if ($radio_info['genre'] == "DJ On-Air"){
$rate = "1000+";
}
else {
$sql = sprintf("SELECT * FROM songs WHERE ( Genre='%s' AND Title='%s' )", mysql_real_escape_string($radio_info['genre']), mysql_real_escape_string($radio_info['now_playing']));
$res = mysql_query($sql) or die();
$row = mysql_fetch_array($res, MYSQL_ASSOC);
$rate = $row['Rate'];
$id = $row['id'];
}
Щас посмотрю, позже напишу.
В консоле запускаю командой php db_update.php выдает такое:
Warning: feof() expects parameter 1 to be resource, boolean given in /root/scripts/radio/db_update.php on line 50
Содержание строки той самой:
while (!feof($fp)) {
Отредактировано newdj (19-12-2012 12:58:12)
возможно файл не открылся тут $fp = fopen("$MUSICDIR/$genre/playlist.m3u","r");
И кстати треки в БД записались.
Слушай а может быть такое что не подключен fopen ?
Подскажи как включить fopen на ubuntu, только что гуглил не нашел.
в php.ini но сказал же, еслиб был отключен была б ошибка
проблема скорей в неверном пути
вот вставить для проверки можно перед 50 строчкой
if(!file_exists("$MUSICDIR/$genre/playlist.m3u"))echo "файл $MUSICDIR/$genre/playlist.m3u несуществует";
Поставил перед 50 строчкой, тоже самое.
Отредактировано newdj (19-12-2012 14:26:12)
тогда еще раз проверить права на чтение папок
$MUSICDIR ($MUSICDIR="/home/PUBLIC/Music"; ),
$genre ($Gen = array('Dance','House','Trance','Hardstyle','Hardcore','Chill','Breaks','Pumping');)
и файлов playlist.m3u что в них находятся
так как не может скрипт прочитать плейлисты, если файл существует но его не читает только это и остается
также можно проверить не пустые ли эти файлы
На всех стоят 777 . Блин да что ж такое.
Что еще может быть ?(
если уж на то пошло то в этой системе еще много "велосипедов"
для начала не так уж хорошо все это исполнять от root
также глупо генерировать текстовые плейлисты и перезагружать их в ices если ices может работать напрямую со скриптом который генерирует ему что играть
и из этого следует еще одно зачем создавать текстовые плейлисты если и так используется база и все можно поместить там
и самое важное — хватит пинать труп под названием ices 0.4
А может есть что попроще реализация голосования ? И это можно поставить по ezstream ?
если просто голосование то
на сайте возле композиции ставим + и -
действие этих кнопок приводит к проверке есть ли этот трек в базе
если есть просто добавляем (или отнимаем) голос
если нет то вписываем и добавляем (или отнимаем) голос
ezstream и ices почти одна и та же фигня, только в ezstream помоему нет кросфейда и перекодирование делается внешне
Ага, я понял. И как такое реализовать ? Теоретически звучит просто...
Отредактировано newdj (19-12-2012 16:52:46)
Чтобы отправить ответ, вы должны войти или зарегистрироваться