View Single Post
  #20  
Unread 05-29-2008, 10:38 AM
Buyirugh's Avatar
Buyirugh Buyirugh is offline
A Dervish Cutthroat
 
Join Date: Sep 2005
Server: Unrest
Posts: 37
Default

Quote:
Originally Posted by therealmosha View Post
erm... looks like you forgot several servers... especially valor
Ok... I've fixed it. I have made modifications so it uses regular expression matching, instead of string replacing. Also, I have made it so that it is easy to plop in as a PHPNuke block.

Code:
<?php

// If using as stand-along code, comment out the next four lines
if (eregi("block-Network_Status.php",$PHP_SELF)) { 
    Header("Location: index.php"); 
    die(); 
}


$get_server = "eq2players.station.sony.com";
$get_page   = "/en/network_status.vm";

$US_Servers = array("Befallen","Blackburrow","Butcherblock","Crushbone","Everfrost","Guk","Kithicor","Mistmoore","Nagafen","Najena","Nektulos","Oasis","Permafrost","Unrest");

$Ex_Servers = array("The Bazaar","Vox");

$RP_Servers = array("Antonia Bayle","Lucan DLere","Venekor");

$Int_Servers = array("Innovation","Runnyeye","Sebilis","Splitpaw","Storms","Valor");

$locked_string = "<span class=\"server_status_locked\">";
$unavail_string = "<span class=\"serverunavailable\">";
$locked_image = "&nbsp;&nbsp;<img align=\"middle\" src=\"/images/netstat-locked.gif\">&nbsp;&nbsp;";

$up_string = "<span class=\"serverup\">";
$up_image = "&nbsp;&nbsp;<img align=\"middle\" src=\"/images/netstat-up.gif\">&nbsp;&nbsp;";

$down_string1 = "<span class=\"serverdown\">";
$down_string2 = "<span class=\"server_status_down\">";
$down_image = "&nbsp;&nbsp;<img align=\"middle\" src=\"/images/netstat-down.gif\">&nbsp;&nbsp;";

$get_file = fsockopen($get_server, 80, $errno, $errstr, 12);

fputs($get_file, "GET ".$get_page." HTTP/1.0\r\n");
fputs($get_file, "Host: ".$get_server."\r\n");
fputs($get_file, "Referer: http://".$get_server."\r\n");
fputs($get_file, "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)\r\n\r\n");

//$get_file = fopen("http://".$get_server.$get_page, "r");

while(!feof($get_file)) {
	$get_data .= fread($get_file, 4096);
}


$clean_content = "<b>US Servers:</b><br>";

for ($i = 0; $i < count($US_Servers); $i++) {
	if (strpos($get_data, $locked_string.$US_Servers[$i])) {
		$clean_content .= $locked_image.$US_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $unavail_string.$US_Servers[$i])) {
		$clean_content .= $locked_image.$US_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $up_string.$US_Servers[$i])) {
		$clean_content .= $up_image.$US_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string1.$US_Servers[$i])) {
		$clean_content .= $down_image.$US_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string2.$US_Servers[$i])) {
		$clean_content .= $down_image.$US_Servers[$i]."<br/>";
	} else {
		$clean_content .= $up_image.$US_Servers[$i]."<br/>";
	}
}


$clean_content .= "<hr size=\"1\"><b>Exchange Servers:</b><br>";

for ($i = 0; $i < count($Ex_Servers); $i++) {
	if (strpos($get_data, $locked_string.$Ex_Servers[$i])) {
		$clean_content .= $locked_image.$Ex_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $unavail_string.$Ex_Servers[$i])) {
		$clean_content .= $locked_image.$Ex_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $up_string.$Ex_Servers[$i])) {
		$clean_content .= $up_image.$Ex_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string1.$Ex_Servers[$i])) {
		$clean_content .= $down_image.$Ex_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string2.$Ex_Servers[$i])) {
		$clean_content .= $down_image.$Ex_Servers[$i]."<br/>";
	} else {
		$clean_content .= $up_image.$Ex_Servers[$i]."<br/>";
	}
}


$clean_content .= "<hr size=\"1\"><b>RP Servers:</b><br>";

for ($i = 0; $i < count($RP_Servers); $i++) {
	if (strpos($get_data, $locked_string.$RP_Servers[$i])) {
		$clean_content .= $locked_image.$RP_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $unavail_string.$RP_Servers[$i])) {
		$clean_content .= $locked_image.$RP_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $up_string.$RP_Servers[$i])) {
		$clean_content .= $up_image.$RP_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string1.$RP_Servers[$i])) {
		$clean_content .= $down_image.$RP_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string2.$RP_Servers[$i])) {
		$clean_content .= $down_image.$RP_Servers[$i]."<br/>";
	} else {
		$clean_content .= $up_image.$RP_Servers[$i]."<br/>";
	}
}


$clean_content .= "<hr size=\"1\"><b>International Servers:</b><br>";

for ($i = 0; $i < count($Int_Servers); $i++) {
	if (strpos($get_data, $locked_string.$Int_Servers[$i])) {
		$clean_content .= $locked_image.$Int_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $unavail_string.$Int_Servers[$i])) {
		$clean_content .= $locked_image.$Int_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $up_string.$Int_Servers[$i])) {
		$clean_content .= $up_image.$Int_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string1.$Int_Servers[$i])) {
		$clean_content .= $down_image.$Int_Servers[$i]."<br/>";
	} elseif (strpos($get_data, $down_string2.$Int_Servers[$i])) {
		$clean_content .= $down_image.$Int_Servers[$i]."<br/>";
	} else {
		$clean_content .= $up_image.$Int_Servers[$i]."<br/>";
	}
}


$content = "<table align=\"center\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">";
$content .= "<tr><td>";

$content .= $clean_content;

$content .= "</td></tr>";
$content .= "</table>";

// If using as stand-along code, remove the two comment slashes on the next line.
//echo $content;

?>
__________________

Last edited by Buyirugh : 05-29-2008 at 10:44 AM. Reason: Made code modular, can be used as Nuke block as well
Reply With Quote