€
$
₴
₽
EN
RU
Vmeste.EU
Лента
Каталог
Файлы
Форумы
Услуги
Основное
Radiotalk
Пользовательское
Технологии вещания, софт, скрипты
6 •
Посмотреть все темы
Ссылка с названия потока
1
2
95
Артур
@NoExist
07.02.2012
В общем, на форуме я ничего подобного не нашел да и не знаю как поиск сформулировать...
Мне надо, что бы когда играет поток "Стол Заказов" на странице, где выводится информация о том, что в эфире и где написано "Стол Заказов" с это надписи шла ссылка на стол заказов, но когда меняется поток на "Нон-Стоп" и соответственно меняется надпись, то уже шла другая ссылка.
Я знаю, что это возможно и даже дам ссылку на пример -
**********
Мои знания не позволяют даже приблизительно придумать как это сделать, сможете помочь?
6245
Тарас
@tarasian666
07.02.2012
каким скриптом пользуешься для вывода "что в эфире" ?
95
Артур
@NoExist
07.02.2012
<?php
$data = file_get_contents('http://109.120.144.101:8000/status.xsl?mount=/FrostFM');
function antara($string, $start, $end){
$string = " ".$string;
$ini = strpos($string,$start);
if ($ini == 0) return "";
$ini += strlen($start);
$len = strpos($string,$end,$ini) - $ini;
return substr($string,$ini,$len);
}
header("Content-type: text/html; charset=windows-1251");
if(antara($data, "Mount started:</td>\n<td class=\"streamdata\">","</td>") ==''){$data = file_get_contents('http://109.120.144.101:8000/status.xsl?mount=/FrostFM');}
$data = iconv("utf-8", "cp1251", $data);
$title = antara($data, "Stream Title:</td>\n<td class=\"streamdata\">","</td>");
$description = antara($data, "Stream Description:</td>\n<td class=\"streamdata\">","</td>");
$content_type = antara($data, "Content Type:</td>\n<td class=\"streamdata\">","</td>");
$Mount_started = antara($data, "Mount started:</td>\n<td class=\"streamdata\">","</td>");
$Bitrate = antara($data, "Bitrate:</td>\n<td class=\"streamdata\">","</td>");
$Current_listeners = antara($data, "Current Listeners:</td>\n<td class=\"streamdata\">","</td>");
$Peak_listeners = antara($data, "Peak Listeners:</td>\n<td class=\"streamdata\">","</td>");
$Stream_genre = antara($data, "Peak Listeners:</td>\n<td class=\"streamdata\">","</td>");
$Stream_url = antara($data, "Stream URL:</td>\n<td class=\"streamdata\">","</td>");
$Current_song = antara($data, "Current Song:</td>\n<td class=\"streamdata\">","</td>");
$hellp_curr_listeners = antara($hellp, "Сейчас слушают:</td>\n<td class=\"streamdata\">","</td>");
$hellp_peak_listeners = antara($hellp, "Максимум было</td>\n<td class=\"streamdata\">","</td>");
$Curr_listens=$Current_listeners2+$Current_listeners+$hellp_curr_listeners;
$Peak_listens=$Peak_listeners2+$Peak_listeners+$hellp_peak_listeners;
$staylst=$Curr_listens+1;
echo '<span style="font-size: 0.72em; font-family:Trebuchet MS, Tahoma, Arial, sans-serif; color:#3090c3"><span style="font-size: large;"><br><b>В эфире:</b><br></span><span style="font-size: small;"> '.$title.' <br></span>
<span style="font-size: large;"><br><b>У руля:</b></b><br></span><span style="font-size: small;"> '.$description.' <br></span>
<span style="font-size: large;"><br><b>Сейчас в эфире:</b><br></span><span style="font-size: small;"> '.$Current_song.' <br></span>
<center></center>';
?>
6245
Тарас
@tarasian666
08.02.2012
перед if(antara($data, "Mount started:.....
делаем $link = 'http://ссылка1';
между {} добавляем $link = 'http://ссылка2';
в нужном месте выводим echo "<a href='$link' >ссылка</a>";
95
Артур
@NoExist
08.02.2012
Все сделал и скрипт перестал работать =*(
6245
Тарас
@tarasian666
08.02.2012
значит допустил синтаксичскую ошибку
95
Артур
@NoExist
08.02.2012
я сделал все как ты сказал...=\
6245
Тарас
@tarasian666
08.02.2012
ну значит не так понял ))
6245
Тарас
@tarasian666
08.02.2012
имел ввиду так
header("Content-type: text/html; charset=windows-1251");
$link = 'http://ссылка1';
if(antara($data, "Mount started:</td>\n<td class=\"streamdata\">","</td>") ==''){$data = file_get_contents('http://109.120.144.101:8000/status.xsl?mount=/FrostFM');
$link = 'http://ссылка2';
}
или так
$link = 'http://ссылка1';
header("Content-type: text/html; charset=windows-1251");
if(antara($data, "Mount started:</td>\n<td class=\"streamdata\">","</td>") ==''){$data = file_get_contents('http://109.120.144.101:8000/status.xsl?mount=/FrostFM');
$link = 'http://ссылка2';
}
или так
$link = 'http://ссылка1';
header("Content-type: text/html; charset=windows-1251");
if(antara($data, "Mount started:</td>\n<td class=\"streamdata\">","</td>") ==''){
$link = 'http://ссылка2';
$data = file_get_contents('http://109.120.144.101:8000/status.xsl?mount=/FrostFM');
}
и тд итп еще есть пару вариантов
95
Артур
@NoExist
08.02.2012
Щас по другому попробую
А еще уточни один момент, может я с ним и допустил ошибку.
echo "<a href='$link' >ссылка</a>";
Вот это куда вставлять? В шаблон сайта? Или в пхп?
6245
Тарас
@tarasian666
08.02.2012
в тот же скрипт
95
Артур
@NoExist
08.02.2012
Вот не знаю... Без echo "<a href='$link' >ссылка</a>"; Скрипт работает, но без ссылки, вставляю, перестает...
6245
Тарас
@tarasian666
08.02.2012
значит не туда вставляешь
95
Артур
@NoExist
08.02.2012
так мне нужно смотри:
echo '<span style="font-size: 0.72em; font-family:Trebuchet MS, Tahoma, Arial, sans-serif; color:#3090c3"><span style="font-size: large;"><br><b>В эфире:</b><br></span><span style="font-size: small;">
В этом коде его вставить, что бы было так: "В эфире: и тут ссылка"
+ там нужно ведь название еще вводить echo "<a href='$link' >ссылка</a>";, а мне нужно, что бы и название и ссылка менялись в зависимости от названия потока
6245
Тарас
@tarasian666
08.02.2012
тогда такую же процедуру делаем $link_name = 'название ссылки1';
echo '<span style="font-size: 0.72em; font-family:Trebuchet MS, Tahoma, Arial, sans-serif; color:#3090c3"><span style="font-size: large;"><br><b>В эфире:<a href="'.$link.'" >'.$link_name.'</a></b><br></span><span style="font-size: small;">
Отредактировано tarasian666 -
08.02.2012
95
Артур
@NoExist
08.02.2012
Хм, а как сделать так, что если играет потока FrostFM, то идет ссылка 1, а если играет FrostFMSZ, то ссылка 2? Просто я в коде этого не увидел =(
6245
Тарас
@tarasian666
08.02.2012
потому что ты подставил 2 одинаковых маунта
95
Артур
@NoExist
08.02.2012
А тот, самый первый вообще на код не влияет, на сколько я понял т.к. данные не берет с него.
6245
Тарас
@tarasian666
08.02.2012
берет с первого, если там ничего нет берет со второго
если на status.xsl нету Mount started меняй строчку на то что там есть
95
Артур
@NoExist
08.02.2012
Mount started есть
С этой строчки он не берет данные - $data = file_get_contents('http://109.120.144.101:8000/status.xsl?mount=/FrostFM');
А с этой берет - if(antara($data, "Mount started:</td>\n<td class=\"streamdata\">","</td>") ==''){$data = file_get_contents('http://109.120.144.101:8000/status.xsl?mount=/FrostFM');}
Может быть первую заменить на такую же вторую?