ОсновноеRadiotalkПользовательское
Общие вопросы по интернет радио вещанию
6   •   Посмотреть все темы

SHOUTcast XML Status Помогите пожалуйста..

 

5
Илья @Wityaz
Как сделать запрос на SHOUTcast сервер чтобы получить на выходе(на страничке сайта) данные из XML статуса?

Я читал что можно как-то через GET запрос, но не получается ни как..

Вот код запроса.. что ни так??

<?php

function unhtmlentities($string)
{
$trans_tbl=array();
for($i=32;$i<=255;$i++)
$trans_tbl['&#x'.strtoupper(dechex($i)).';']=chr($i);

return strtr($string, $trans_tbl);
}

$scfp = @fsockopen("$scip", $scport, &$errno, &$errstr, 10);
if(!$scfp) {
$scsuccs=1;

echo'';
}
if($scsuccs!=1){
fputs($scfp,"GET /admin.cgi?pass=$scpass&mode=viewxml HTTP/1.0\r\nUser-Agent: SHOUTcast Song Status (Mozilla Compatible)\r\n\r\n");
while(!feof($scfp)) {
$page .= fgets($scfp, 1000);
}
$loop = array("STREAMSTATUS", "BITRATE", "SERVERTITLE", "CURRENTLISTENERS", "MAXLISTENERS");
$y=0;
while($loop[$y]!=''){
$pageed = ereg_replace(".*<$loop[$y]>", "", $page);
$scphp = strtolower($loop[$y]);
$$scphp = ereg_replace("</$loop[$y]>.*", "", $pageed);
if($loop[$y]==SERVERGENRE || $loop[$y]==SERVERTITLE || $loop[$y]==SONGTITLE || $loop[$y]==SERVERTITLE)
$$scphp = urldecode($$scphp);

$y++;
}
$pageed = ereg_replace(".*<SONGHISTORY>", "", $page);
$pageed = ereg_replace("<SONGHISTORY>.*", "", $pageed);
$songatime = explode("<SONG>", $pageed);
$r=1;
while($songatime[$r]!=""){
$t=$r-1;
$playedat[$t] = ereg_replace(".*<PLAYEDAT>", "", $songatime[$r]);
$playedat[$t] = ereg_replace("</PLAYEDAT>.*", "", $playedat[$t]);
$song[$t] = ereg_replace(".*<TITLE>", "", $songatime[$r]);
$song[$t] = ereg_replace("</TITLE>.*", "", $song[$t]);
$song[$t] = unhtmlentities($song[$t]);
$dj[$t] = ereg_replace(".*<SERVERTITLE>", "", $page);
$dj[$t] = ereg_replace("</SERVERTITLE>.*", "", $pageed);
$r++;
}

fclose($scfp);
}

if($streamstatus == "1"){
echo'<html>
{Код страницы} //тут страничка если сервер включен
</html>'
}
else
{
echo'<html>
{Код страницы} //а тут если выключен
</html>';}

?>

32
Ilya @Neon
! Тебе Сюда ! **********

Отредактировано Neon - 16.08.2012
6245
Тарас @tarasian666
скрипт в порядке, проблема может в водимых в скрипт данных

5
Илья @Wityaz
Neon пишет:

!Тебе Сюда! **********

не работают(

5
Илья @Wityaz
tarasian666 пишет:

скрипт в порядке, проблема может в водимых в скрипт данных

А как вводить? у меня прописано

$scdef = "Радио Рында";
$scip = "62.16.92.226";
$scport = "8000";
$scpass = "я промолчу";

5
Илья @Wityaz
Может на самом сервере что то надо сделать?

6245
Тарас @tarasian666
какая версия php ?

функция ereg_replace устарела

5
Илья @Wityaz
tarasian666 пишет:

какая версия php ?

функция ereg_replace устарела


на хостинге написано Версия PHP 5.2.14

Отредактировано Wityaz - 04.05.2012