Тема: А вот интересный способ вывода информации о радио в AJAX окне

Способ конечно легкий и не требует особых знаний.

Что нам потребуется? :
файл статистики радио залитый на php хостинг... Сам пример кода файла лежит тут...
http://radiotalk.ru/viewtopic.php?id=818

Записываем между:

<head> и </head> всех страниц сайта

Следующее:

<script type="text/javascript" src="http://nzrfm.net.ru/openLayerA.js"></script>

Далее создаете html файл с требуемым кодом например:

<html>
<head>
<title>В эфире NZRfm</title>
</head><iframe src="Ссылка на файл статистики" width="100%" height="100%"></iframe></body>
</html><style>
#bn {display:block;}
#bt {display:block;}
</style>

или по экспериментируйте с подключением пхп скрипта в окно...

сохраняете в UTF-8 с расширением .html и любым названием.

далее в нужном месте где хотите вывести ссылку для вызова ajax-окна ставите:

<a href="javascript:openLayerA('obsv','Ссылка до файла .html','Название окна','185','200','no');"> <b>Что в эфире?</b></a>

И при нажатии на обычную ссылку будет вылазить вот такое вот окошко....

http://i012.radikal.ru/0911/4e/fd749f4eed99t.jpg


Добавлю что особенно хорошо этот скрипт подходит для тех кто  желает не обновляя всю страницу кликнуть на ссылочку и увидеть быстро нужную инфу...


Абы кому пригодится ... Adios

Отредактировано Всё-просто (11-11-2009 17:59:56)

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

2

Re: А вот интересный способ вывода информации о радио в AJAX окне

а где здесь ajax ????

Re: А вот интересный способ вывода информации о радио в AJAX окне

Само окно аякс! 
Напомню тема называется "способ вывода информации о радио в AJAX окне"

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

4

Re: А вот интересный способ вывода информации о радио в AJAX окне

???µ??, ???°???? ????????  - ?????µ???? ?? ???? ???°???????? ???????????µ?????? ?? ?°?????? ???µ ?????µ?µ??
?° ?????? ???????±???°?¶?µ?????µ ???????? ?? ?????????????? ?°?????? ???????»?µ?????? ?????????µ?????? ???°??

<div style="position: relative; float: left; margin-top: 1px; margin-left: 1px; z-index:3; width: 400px; height: 120px;background-image: url(images/back.png); "> 
<img  src="images/td3.png" height="10px" width="400px"> 
<img style="float: left;" src="images/td5.png" height="100px" width="10px"> 
 
 
 
<div style="float: left;z-index:3;width:280px; height:100px;"> 
<div class="center" style="clear: left;float: left; width: 100%; height: 40px; background-image: url('/images/back.png');"> 
<B>Now playing</B><br><span id="currtrack"></span> (<span id="countDownText"></span>)</div> 
<img name="indicator" style="position: relative; margin-left: 72px" src="images/loader2.gif"> 
<div style="float: left; width: 100%;  height: 45px; background-image: url('/images/back.png'); font-size: 9pt; color: #999;"> 
<table height="100%" width="100%" align="left" cellpadding="0" cellspacing="0"> 
<tr><td valign="middle" style="text-align: left;"> 
<B>Next</B> -> <span id="nexttrack"></span></td></tr> 
<tr><td valign="bottom" style="text-align: left;"> 
<B>listeners</B> <span id="listeners"></span></td></tr> 
</table> 
</div> 
</div> 
 
<img name="picture" onclick="show(this.src)" style="float: left;border-color:black;cursor: pointer; border-left:1px solid black;" width=100px height=100px src="../pictures/na.gif" > 
<img style="float: left;" src="images/td4.png" height="100px" width="9px"> 
<img src="images/td2.png" height="10" width="400px"> 
</div> 
 
<script language="JavaScript" type="Text/JavaScript"> 
<!--
var file = '../nextxml.php';
var countDownTime;
var op = 10;
 
function secsToMins(theValue) {
var theMin = Math.floor(theValue / 60);
var theSec = (theValue % 60);
if (theSec < 10)
theSec = "0" + theSec;
return(theMin + ":" + theSec);
}
 
function countDown() {
countDownTime--;
if (countDownTime == 0) {
ajaxRead(file);
return;}
 
if (document.all)
document.all.countDownText.innerText = secsToMins(countDownTime);
else if (document.getElementById)
document.getElementById("countDownText").innerHTML = secsToMins(countDownTime);
 
setTimeout("countDown()", 1000);
}
 
function ajaxRead(file){ 
document.all.indicator.style.visibility = 'visible';
  var xmlObj; 
  if(window.XMLHttpRequest){ 
      xmlObj = new XMLHttpRequest(); 
  } else if(window.ActiveXObject){ 
      xmlObj = new ActiveXObject("Microsoft.XMLHTTP");  
  } else {
      return; 
  } 
  xmlObj.onreadystatechange = function(){ 
    if(xmlObj.readyState == 4){ 
       updateObj('currtrack', xmlObj.responseXML.getElementsByTagName('currtrack')[0].textContent);
       updateObj('nexttrack', xmlObj.responseXML.getElementsByTagName('nexttrack')[0].textContent);
       updateObj('listeners', xmlObj.responseXML.getElementsByTagName('listeners')[0].textContent);
       document.picture.src = xmlObj.responseXML.getElementsByTagName('picture')[0].textContent;
       countDownTime = xmlObj.responseXML.getElementsByTagName('refresh')[0].textContent;
       document.all.indicator.style.visibility = 'hidden';
       countDown();
     } 
    } 
    xmlObj.open ('GET', file, true); 
    xmlObj.send (''); 
  } 
  function updateObj(obj, data){ 
  document.getElementById(obj).innerHTML = data;
  
  } 
ajaxRead(file);
 //-->
</script>

?° php xml ???°???» ???¶?µ ???????°???? ?? ?·?°?????????????????? ???? ???????? ???????????° ?????°?????????????° ?±?µ???µ??????

???? openlayer http://www.openlayers.org/api/OpenLayers.js

Отредактировано tarasian666 (09-12-2009 17:53:12)

Re: А вот интересный способ вывода информации о радио в AJAX окне

ты походу не влепил...
Само окно аякс то что ты видешь в ВНУТРИ НЕГО это фрейм который грабится с php хоста ...
ajax есть 2 вида (ну по крайней мере я знаю)
OpenLayerA
OpenLAyerB
Первое открывает в себе html wml и так далее да в принципе все.
А второе xml'

В этом случае используется версия Open Layer A ...
Вместо того чтобы тут учить ученого , можешь что нибудь покруче придумать а не мозга **ать

Добавлено спустя     3 минуты   30 секунд:
А вот то как ты аякс расписал я в шоке...
У меня всё будет на 90% проще xD

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

6

Re: А вот интересный способ вывода информации о радио в AJAX окне

ну как сказать, в своем скрипте я не использую еще какие нибудь библиотеки. Так что явно меньше занимает чем любой прикрученый OpenLayer скрипт.
как видно сам аякс у меня только в функции ajaxRead(file) - уж проще там некуда. И он запрашивает только переменные, а не всю страницу.
И не надо никакую ссылку жать чтоб увидеть что играет, по окончании трека инфа в блоке обновляется сама.
По функционалу описаный вами метод мало чем отличается от javascript функции window.open и скрипт подан вами написан специально для ucoz

Отредактировано tarasian666 (12-12-2009 16:09:00)

7

Re: А вот интересный способ вывода информации о радио в AJAX окне

tarasian666 пишет:

Само окно аякс то что ты видешь в ВНУТРИ НЕГО это фрейм который грабится с php хоста ...

ajax ни какое не окно, а "Web-технология, позволяющая взаимодействовать с сервером без перезагрузки страницы. AJAX базируется на объекте XMLHttpRequest. Как видно из названия он задумывался для работы с XML, что, впрочем, не мешает использовать его и в других целях."

Re: А вот интересный способ вывода информации о радио в AJAX окне

к чему весь этот бред?

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

9

Re: А вот интересный способ вывода информации о радио в AJAX окне

Всё-просто, с вами всё-ясно...

1. окошко не будет таким как на скриншоте если сайт не на юкозе.
2. сможете написать мой скрипт проще с таким же или меньшим обьемом и чтоб трафика жрало не больше - флаг в руки
3. бред вот в чем "...в AJAX окне"  - окно есть окно, а ajax - технология

Отредактировано tarasian666 (12-12-2009 16:39:42)

Re: А вот интересный способ вывода информации о радио в AJAX окне

для того я и написал способ подключения библиотеки

Всё-просто пишет:

<script type="text/javascript" src="http://nzrfm.net.ru/openLayerA.js"></script>

В случае если сайт не на юкозе и вообще ...

Если говорить о .xml то способ подключения без библиотек вот:

<a href="javascript://" onclick="openLayerB('Copyright',0,'/pages/stat.xml','В Эфире',550,380,'1'); return false;"><b>Что в эфире?</b></a>

Где:
/pages/stat.xml   - путь к файлу xml
В Эфире - название окна
Что в эфире? - название ссылки




Большинство радио сайтов выполнены как я заметил из обычных html страничек ...
Если у кого то стоят CMS то это дело того, кто его поставил - ибо устанавливая CMS на свой сайт человек должен знать с чем он собирается иметь дело...



О количестве трафика я не забочусь, у меня сайт на обычной Html  разметке соответственно скрипт для меня подобных.
на моем сайте окошко ничем не перегружено.



Вообще все "обсирают" юкоз только из за того что на нем возможностей мало, однако это не так, более опытным не нравится запрет на использование php на uCoz это их психические проблемы, зато он безопасен!

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

11

Re: А вот интересный способ вывода информации о радио в AJAX окне

Всё-просто пишет:

<script type="text/javascript" src="http://nzrfm.net.ru/openLayerA.js"></script>

а вот и нифига! вы скрипт смотрели? он нуждается в css который лежит скорее всего на юкозе.

без библиотек? хотите сказать что openLayerB то есть стандартная функция javascript?

о трафике забочусь т.к. и страницы тогда быстрее грузятся.

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

фрейм вставить в блок

<iframe src="Ссылка на измененный файл статистики" width="100%" height="100%"></iframe>

измененный файл статистики (php)

<html>
<head>
<title>В эфире NZRfm</title>
<meta http-equiv="refresh" content="60">
</head><body><?php include"файл статистики"; ?></body>
</html>

Отредактировано tarasian666 (13-12-2009 13:37:56)

Re: А вот интересный способ вывода информации о радио в AJAX окне

Боитесь что ваш кеш лопнет или как? big_smile

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

13

Re: А вот интересный способ вывода информации о радио в AJAX окне

да причем тут кеш...

если на то пошло то зачем изобретать велосипед, вставил фрейм в блок и ни чего жать не надо чтоб увидеть что играет + фрейм сам перезагружается (и только он а не вся страница)

Re: А вот интересный способ вывода информации о радио в AJAX окне

у меня таким путём приходилось перезагружать всю страницу увы...

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

15

Re: А вот интересный способ вывода информации о радио в AJAX окне

значит что то неправильно сделали.
Фрейм может перезагружатся без всей страницы. У меня таким путем все получалось.

Re: А вот интересный способ вывода информации о радио в AJAX окне

хм... ну вообщем вы правы. тема закрыта )

Сам придумал или из гугла скопировал?
========================================================================
FMGAMERADIO.RU - Уж както стараемся выделится big_smile

17

Re: А вот интересный способ вывода информации о радио в AJAX окне

tarasian666, а можно подогнать отсчёт оставшегося времени под SAM php-web версии 4.9.1 ?

Сайт и плейлист радио ZED-FM.

18

Re: А вот интересный способ вывода информации о радио в AJAX окне

можно, я вам запрещать не буду ))

Отредактировано tarasian666 (28-08-2011 11:38:48)

19

Re: А вот интересный способ вывода информации о радио в AJAX окне

Ruskat пишет:

tarasian666, а можно подогнать отсчёт оставшегося времени под SAM php-web версии 4.9.1 ?

нечто подобное можно с помощью samhtmweb соорудить

fm105.ru/ - Death Metal, Alternative, Metalcore etc...
http://nnfile.tk - Быстрый файлообменник без ограничений скорости и просмотра рекламы!