View Full Version : Radio Stats
Yamba
19-10-2006, 05:33 PM
Can anyone make a radio stats for my site please? I don't want the typical PHP code just posted here as everytime I try to use that code it dosen't work and so that's why I need someone who is an expert or experienced in PHP to make me one?
PM Me!
You're obviously not doing it correctly because there is only 1 code - I think.
Yamba
19-10-2006, 06:04 PM
There's not there's several actually I saw a few on tech tuts and when I edit the config.php file I do it with the correct details but the radio server says the radio is offline all the time!
Yamba
19-10-2006, 06:12 PM
No I have tested it with the radio online but no change :(
How long have you waited?
Yamba
19-10-2006, 06:22 PM
Like 10 Mins maybe longer!
For the config file i have my own codes:
name config_radio.php
<?php
//////////////////////////////////////////////////////////////////////////////////////////////
//
//////////////////////////////////////////////////////////////////////////////////////////////
//Configuration
$scdef = "There Is No Dj Online";
$scip = "IP HERE";
$scport = "PORT HERE";
$scpass = "PASSWORD HERE";
$bitrate = "BIT RATE HERE";
//End configuration
And radio_stats.php
<?php
// Shoutcast Server Stats
// Parses shoutcasts xml to make an effective stats thing for any website
// ©2004-2005 Daniel Brown http://www.gmtt.co.uk
// Please refer to the readme file for use.
include('config_radio.php'); //you may edit this path to fit your server environment otherwise leave it alone
$scfp = fsockopen("$scip", $scport, &$errno, &$errstr, 30);
if(!$scfp) {
$scsuccs=1;
echo''.$scdef.' is Offline';
}
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);
}
################################################## ################################################## ##################
/////////////////////////part 1 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
//define xml elements
$loop = array("STREAMSTATUS", "BITRATE", "SERVERTITLE");
$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);
// uncomment the next line to see all variables
//echo'$'.$scphp.' = '.$$scphp.'<br>';
$y++;
}
//end intro xml elements
################################################## ################################################## ##################
################################################## ################################################## ##################
/////////////////////////part 2\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
//get song info and history
$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] = urldecode($song[$t]);
$dj[$t] = ereg_replace(".*<SERVERTITLE>", "", $page);
$dj[$t] = ereg_replace("</SERVERTITLE>.*", "", $pageed);
$r++;
}
//end song info
fclose($scfp);
}
//display stats
if($streamstatus == "1"){
//you may edit the html below, make sure to keep variable intact
echo'
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<META HTTP-EQUIV="REFRESH" CONTENT="10;URL=radio_stats.php">
<link rel=stylesheet href="" type="text/css">
<title>'.$scdef.'</title>
</head>
<body text="verdana" bgcolor="black">
<p align="center"><center>
<font face="arial" size="2"><b> Server Name:</b> '.$servertitle.'</font></p>
<font face="arial" size="2"></p>
<font face="verdana" size="2" color="white"><b>
Current Song:</b> '.$song[0].'</font></p>
<b>
<font face="arial" size="2">
Past Songs:</font></b>
<font color=""><font face="verdana" size="2">
<p align="center">
<b>1.</b> '.$song[1].'<BR>
<b>2.</b> '.$song[2].'<BR>
<b>3.</b> '.$song[3].'<BR>
</font>
<BR>
</p></p>
</body>
</html>';
}
if($streamstatus == "0")
{
//you may edit the html below, make sure to keep variable intact
echo'
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<META HTTP-EQUIV="REFRESH" CONTENT="10;URL=radio_stats.php">
<link rel=stylesheet href="" type="text/css">
<title>Radio Server Is Offline</title>
</head>
<body text="white" bgcolor="black">
Server Offline!
</body>
</html>';
}
?>
Yamba
19-10-2006, 06:25 PM
That's the code I've talked about not owrking I'll give it a try and let you know if it works!
Yamba
19-10-2006, 06:35 PM
Nope that dosen't work! Oh and sorry for double posting!
Matty. (Forum Moderator) - Please don't double post. Please just edit your other post.
You're doing something wrong.
Yamba
19-10-2006, 07:10 PM
How am I doing something wrong?
Yamba
19-10-2006, 07:14 PM
I have had other people try it for me and it dosen't work for them either and it has been basically the same code!
Jackboy
20-10-2006, 09:02 AM
Im not positive but im sure this has something to do with shell access. I dunno though. Ask your host if you have shell access.
Someone tell me if im correct please..
:Blob
20-10-2006, 10:44 AM
It could be up to your hosts firewall... (Not theres, the servers..)
Yamba
20-10-2006, 03:49 PM
Are you all talking about my radio server host or my web host?
Jackboy
20-10-2006, 04:34 PM
web host :P
Lmao! a radio host wouldn't have a firewall denying u access to the info of stats etc.
grahamuk123
23-12-2006, 08:13 PM
I just tried the stats below and i receive this error message when i go on radio_stats.php, the error message is :
"Warning: fsockopen() [function.fsockopen (http://www.digitalhabbo.net/function.fsockopen)]: unable to connect to 66.232.102.103:8060 in /home/habberlo/public_html/radio_stats.php on line 7
Radio Offline is Offline"
also do i input the admin pass or the broadcaster pass?
For the config file i have my own codes:
name config_radio.php
<?php
//////////////////////////////////////////////////////////////////////////////////////////////
//
//////////////////////////////////////////////////////////////////////////////////////////////
//Configuration
$scdef = "There Is No Dj Online";
$scip = "IP HERE";
$scport = "PORT HERE";
$scpass = "PASSWORD HERE";
$bitrate = "BIT RATE HERE";
//End configuration
And radio_stats.php
<?php
// Shoutcast Server Stats
// Parses shoutcasts xml to make an effective stats thing for any website
// ©2004-2005 Daniel Brown http://www.gmtt.co.uk
// Please refer to the readme file for use.
include('config_radio.php'); //you may edit this path to fit your server environment otherwise leave it alone
$scfp = fsockopen("$scip", $scport, &$errno, &$errstr, 30);
if(!$scfp) {
$scsuccs=1;
echo''.$scdef.' is Offline';
}
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);
}
################################################## ################################################## ##################
/////////////////////////part 1 \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
//define xml elements
$loop = array("STREAMSTATUS", "BITRATE", "SERVERTITLE");
$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);
// uncomment the next line to see all variables
//echo'$'.$scphp.' = '.$$scphp.'<br>';
$y++;
}
//end intro xml elements
################################################## ################################################## ##################
################################################## ################################################## ##################
/////////////////////////part 2\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
//get song info and history
$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] = urldecode($song[$t]);
$dj[$t] = ereg_replace(".*<SERVERTITLE>", "", $page);
$dj[$t] = ereg_replace("</SERVERTITLE>.*", "", $pageed);
$r++;
}
//end song info
fclose($scfp);
}
//display stats
if($streamstatus == "1"){
//you may edit the html below, make sure to keep variable intact
echo'
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<META HTTP-EQUIV="REFRESH" CONTENT="10;URL=radio_stats.php">
<link rel=stylesheet href="" type="text/css">
<title>'.$scdef.'</title>
</head>
<body text="verdana" bgcolor="black">
<p align="center"><center>
<font face="arial" size="2"><b> Server Name:</b> '.$servertitle.'</font></p>
<font face="arial" size="2"></p>
<font face="verdana" size="2" color="white"><b>
Current Song:</b> '.$song[0].'</font></p>
<b>
<font face="arial" size="2">
Past Songs:</font></b>
<font color=""><font face="verdana" size="2">
<p align="center">
<b>1.</b> '.$song[1].'<BR>
<b>2.</b> '.$song[2].'<BR>
<b>3.</b> '.$song[3].'<BR>
</font>
<BR>
</p></p>
</body>
</html>';
}
if($streamstatus == "0")
{
//you may edit the html below, make sure to keep variable intact
echo'
<html>
<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<META HTTP-EQUIV="REFRESH" CONTENT="10;URL=radio_stats.php">
<link rel=stylesheet href="" type="text/css">
<title>Radio Server Is Offline</title>
</head>
<body text="white" bgcolor="black">
Server Offline!
</body>
</html>';
}
?>
Jackbee
23-12-2006, 08:16 PM
broadcaster pass
Invent
23-12-2006, 08:43 PM
@Jackboy.
Why would it be a problem to do with Shell Access?
It uses the XML of the DNAS?
ur host doesnt have fsockopen. PM me ur shoutcast details ill host stats 4 u.
grahamuk123
30-12-2006, 07:28 PM
ive tried to use the code and ive used the correct details but i am still getting the same error as i posted befor, if anybody has any ideas i would really appriciate it :D
Sunny.
30-12-2006, 07:59 PM
The Code Works Perfectly Fine With me
Sunny.
30-12-2006, 08:00 PM
Why dont u get someone to install for you?
[Sorry for double posting]
Robbie
30-12-2006, 09:38 PM
Yes, a lot of hosts block using fsockopen for security
Want to hide these adverts? Register an account for free!
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.