Re: djIn и shoutcast!
уже при парсинге такая тема !
Первый русскоязычный форум посвященный интернет-радиовещанию
уже при парсинге такая тема !
php файл сохранить в этих кодировках)
Наверное надо что то изминить в php коде парсера - тока не знаю чего
а как в эдкаст попадает "титл"? И зачем туда пихать html теги?
Если жрет с веб сервера то возможно он не знает в какой оно там кодировке
может поможет это header("Content-Type: content=text/html; charset=utf-8"); в начале кода
пишет djmarkus:
Наверное надо что то изминить в php коде парсера - тока не знаю чего
Исходя из вашего скриншота возникает вопрос. А, зачем вы в txt документ вставляете еще html?
В Edcast есть одна маленькая особенность. Если текстовый файл с титлами в кодировке win, то русские буквы в нем отображаются правильно, но в плеерах (winamp, aimp) отображаются неправильно. Мы пошли другим путем. PHP скрипт у нас сохраняет TXT в кодировке UTF-8 таким образом у всех клиентов в плеерах русские буквы видны, а в самом EDcaste иероглифы.
Привет! Все работало замечательно) - переустановил систему) апач работает пхп тоже - но файл парсирует ошибки
Notice: Trying to get property of non-object in C:\xampp\htdocs\xampp\www\index.php on line 11
Notice: Trying to get property of non-object in C:\xampp\htdocs\xampp\www\index.php on line 11
Notice: Trying to get property of non-object in C:\xampp\htdocs\xampp\www\index.php on line 11
Notice: Trying to get property of non-object in C:\xampp\htdocs\xampp\www\index.php on line 11
факт, что не работает парсер(
пишет djmarkus:
Привет! Все работало замечательно) - переустановил систему) апач работает пхп тоже - но файл парсирует ошибки
Notice: Trying to get property of non-object in C:\xampp\htdocs\xampp\www\index.php on line 11
Листинг файла C:\xampp\htdocs\xampp\www\index.php сюда в теги code напишите.
Создается впечатление что скрипт не может найти что ему парсить, то есть файл
попробую предложить ему другой путь пропарсить
Да заработало)
Скажите плиз! вот есть у меня файл этот с Артист-Название
как к этому его применить?
http://tunein.com/broadcasters/api/
пишет djmarkus:
как к этому его применить?
http://tunein.com/broadcasters/api/
Вы уже получили от них разрешение и PartnerID и PartnerKey ?
да есть
пишет djmarkus:
да есть
Не обещаю, что быстро, но обещаю что напишу вам код на PHP, чтобы вы дополнили свой.
да есть
пишет ubuntu-studio:
пишет djmarkus:
да есть
Не обещаю, что быстро, но обещаю что напишу вам код на PHP, чтобы вы дополнили свой.
Это супер!!!)))
Помогу ускорить процесс, вот кусок кода который у меня отправляет данные на Tunein.
$tunein_title = str_replace(" ", "+", $title);
$tunein_artist = str_replace(" ", "+", $artist);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://air.radiotime.com/Playing.ashx?partnerId=Ваш PartnerID&partnerKey=Ваш PartnerKey');
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, '&title=' . $tunein_title . '&artist=' . $tunein_artist);
$res = curl_exec($curl);
if (!$res)
{
$error = curl_error($curl) . '(' . curl_errno($curl) . ')';
echo $error;
}
else
{
echo $res;
}
curl_close($curl);
Отредактировано gyurgin_1 (02-11-2013 13:38:25)
а как его применять ?
Пролистал назад немного тему, если применить к парсеру, то получается вот так:
<?php
$xml = @simplexml_load_file('title.xml'); //Где лежит файл ХМЛ
if ($xml)
{
$artist = $xml->ELEM->ARTIST;
$title = $xml->ELEM->NAME;
echo '<span>' . $artist . '</span>';
echo '<span>' . $title . '</span>';
}
else
{
}
$file = fopen("/docs/title.txt", "w"); //Путь к созд. файлу и его название
$str = $artist . " - " . $title;
if (!$file)
{
echo ("Ошибка открытия файла");
}
else
{
fputs($file, $str);
}
fclose($file);
$tunein_artist = str_replace(" ", "+", $artist);
$tunein_title = str_replace(" ", "+", $title);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://air.radiotime.com/Playing.ashx?partnerId=Ваш PartnerID&partnerKey=Ваш PartnerKey');
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, '&title=' . $tunein_title . '&artist=' . $tunein_artist);
$res = curl_exec($curl);
if (!$res)
{
$error = curl_error($curl) . '(' . curl_errno($curl) . ')';
echo $error;
}
else
{
echo $res;
}
curl_close($curl);
?>
Отредактировано gyurgin_1 (02-11-2013 20:03:16)
Сразу исправления - на сервер tunein слать данные можно только один раз при смене трека, да и переписывать по нескольку раз Ваш текстовой файл тоже не нужно. Вот вариант с проверкой:
<?php
$xml = @simplexml_load_file('/title.xml'); //Где лежит файл ХМЛ
if ($xml)
{
$artist = $xml->ELEM->ARTIST;
$title = $xml->ELEM->NAME;
echo '<span>' . $artist . '</span>';
echo '<span>' . $title . '</span>';
}
else
{
}
$file_link = "/docs/title.txt"; //Путь к созд. файлу и его название
$str = $artist . " - " . $title;
if (file_get_contents($file_link) !== $str) { // Проверяем изменился ли трек
$file = fopen($file_link, "w");
if (!$file)
{
echo ("Ошибка открытия файла");
}
else
{
fputs($file, $str);
}
fclose($file);
$tunein_artist = str_replace(" ", "+", $artist);
$tunein_title = str_replace(" ", "+", $title);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://air.radiotime.com/Playing.ashx?partnerId=Ваш PartnerID&partnerKey=Ваш PartnerKey');
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, '&title=' . $tunein_title . '&artist=' . $tunein_artist);
$res = curl_exec($curl);
if (!$res)
{
$error = curl_error($curl) . '(' . curl_errno($curl) . ')';
echo $error;
}
else
{
echo $res;
}
curl_close($curl);
}
?>
пробую - все передается - подожду туда ли передается и обновится ли инфо в tunein!
кстати Ваш PartnerID & partnerKey без ID Station достаточно. ?
<?php
$xml = @simplexml_load_file('/title.xml'); //Где лежит файл ХМЛ
if ($xml)
{
$artist = $xml->ELEM->ARTIST;
$title = $xml->ELEM->NAME;
echo '<span>' . $artist . '</span>';
echo '<span>' . $title . '</span>';
}
else
{
}
$file_link = "/docs/title.txt"; //Путь к созд. файлу и его название
$str = $artist . " - " . $title;
if (file_get_contents($file_link) !== $str) { // Проверяем изменился ли трек
$file = fopen($file_link, "w");
if (!$file)
{
echo ("Ошибка открытия файла");
}
else
{
fputs($file, $str);
}
fclose($file);
$tunein_artist = str_replace(" ", "+", $artist);
$tunein_title = str_replace(" ", "+", $title);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://air.radiotime.com/Playing.ashx?partnerId=Ваш PartnerID&partnerKey=Ваш PartnerKey'&id=Айди Станции);
curl_setopt($curl, CURLOPT_HEADER, 1);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, '&title=' . $tunein_title . '&artist=' . $tunein_artist);
$res = curl_exec($curl);
if (!$res)
{
$error = curl_error($curl) . '(' . curl_errno($curl) . ')';
echo $error;
}
else
{
echo $res;
}
curl_close($curl);
}
?>
Добавил Айди Станции и заработало !
http://air.radiotime.com/Playing.ashx?partnerId=Ваш PartnerID&partnerKey=Ваш PartnerKey'&id=Айди Станции);
Всем Спасибо)))
Ну тогда уж, (у вас одинарные кавычки не на месте)
http://air.radiotime.com/Playing.ashx?partnerId=Ваш PartnerID&partnerKey=Ваш PartnerKey&id=Айди Станции')
А так все верно, про id я не доглядел. Ну главное заработало, с чем и поздравляю!
Отредактировано gyurgin_1 (03-11-2013 16:29:04)
Спасибо Дядь