Перейти к публикации

Рекомендованные сообщения

1. прописал в шаблоне

Код

<!-- Вывод статуса радио -->

<?php include "radioplugin.php";?>

<!-- Вывод статуса радио -->
2. сделал файл Код
<?php

$portradio="8050";				// Порт сервера

$ipradio="192.168.0.77";				// IP адрес сервера

$fp = @fsockopen($ipradio, $portradio, $errno, $errstr, 1);

if($fp >= 1){

$radiostatus = include "advanced.php";}

else{ $radiostatus = include "offline.php"; }

?>
3.Мой код advanced.php Код
<?php


$server = "ИП:8000";

$user = "УСЕР";

$passw = "ПАСС";

$mountpoint = "/МОУНТ";


$fp = fopen("http://$user:$passw@$server/admin/stats","r")

		 or die("Error reading Icecast data from $server.");


while(!feof($fp))

{

	 $data .= fread($fp, 8192);

}


fclose($fp);


// Now parse the XML output for our mountpoint

$xml_parser = xml_parser_create();

xml_parse_into_struct($xml_parser, $data, $vals, $index);

xml_parser_free($xml_parser);


$params = array();

$level = array();

foreach ($vals as $xml_elem) {

	 if ($xml_elem['type'] == 'open') {

		if (array_key_exists('attributes',$xml_elem)) {

			list($level[$xml_elem['level']],$extra) =

array_values($xml_elem['att

ributes']);

		 } else {

			 $level[$xml_elem['level']] = $xml_elem['tag'];

		 }

	 }

	 if ($xml_elem['type'] == 'complete') {

		 $start_level = 1;

		 $php_stmt = '$params';

		 while($start_level < $xml_elem['level']) {

			 $php_stmt .= '[$level['.$start_level.']]';

			 $start_level++;

		 }

		 $php_stmt .= '[$xml_elem[\'tag\']] = $xml_elem[\'value\'];';

		 eval($php_stmt);

	 }

}


$listeners = $params['ICESTATS'][$mountpoint]['LISTENERS'];

$currenttrack = $params['ICESTATS'][$mountpoint]['TITLE'];


echo  "

<center>

$listeners listeners are currently connected.

<br />

Currently playing: $currenttrack

</center>";


?>

Ну вообщем работает все кроме 1 не выводит переменные а именно айс каста... может гдето надо еще чтото прописать ?

Выглядит так модуль на странице ------------

listeners are currently connected.

Currently playing:

------------------------------------------------------

П.с я проверил только что на ПХП нюк... скрит рабочий... все выводит... на дле переменных нет...

Что делать ?

Ссылка на сообщение
Поделиться на других сайтах

1. Создаём файл icecast_stats.php в engine/modules

Содержимое icecast_stats.php:

<?php

$login = "Логин";

$password = "Пароль";

$ip = "IP адрес сервера или имя домена";

$port = "Порт";

$mountpoint = "/маунт";


$content = file_get_contents("http://".$login.":".$password."@".$ip.":".$port."/admin/stats.xsl");

$pattern = "|<td><h3>Mount Point (.*?)</h3></td>.*?<tr>\n<td width=\"130\">listeners</td>\n<td class=\"streamdata\">(.*?)</td>\n</tr>.*?<tr>\n<td width=\"130\">title</td>\n<td class=\"streamdata\">(.*?)</td>\n</tr>|is";

preg_match_all($pattern,$content,$out);

for($i = 0; $i < count($out[1]); $i++)

{

	if($out[1][$i] == $mountpoint)

	{

		$listeners = $out[2][$i];

		$current_track = $out[3][$i];

	}

}


$icecast_stats = <<<HTML

<center>

{$listeners} listeners are currently connected.

<br />

Currently playing: {$current_track}

</center>

HTML;

?>
2. Открываем index.php Ищем:
require_once ROOT_DIR.'/engine/init.php';
Ниже вставляем:
require_once ROOT_DIR.'/engine/modules/icecast_stats.php';
Ищем:
$tpl->set('{topnews}',$topnews);
Ниже вставляем:
$tpl->set('{icecast}',$icecast_stats);
В main.tpl вставляйте в нужное место
{icecast}

Набросал побыстрому. Проверяйте.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...