savenko_egor
@savenko_egor

Изменение переменной по событию onclick php и javascript

Здравствуйте, Уважаемые!

Первый раз на Тостере, потому попробую более чётко и грамотно поставить свой вопрос.

У меня в странице index.php есть такой код:
<script>  
    function show()  
            {  
                    $.ajax({  
                url: "now_plaing_page.php?p=<? echo $plaing_radio; ?>",
                        cache: false,  
                        success: function(html){  
                $("#now_plaing").html(html); 
                }  
            });
        }
    $(document).ready(function(){  
    show();  
            setInterval('show()',10000);
    });  
</script>

Данный код выполняет запрос к файлу: "now_plaing_page.php" в установленном временном интервале. Код файла:
<?php
if $request[p] == "radio1" // прошу прощения, не помню какой точно тут код. Но смысл в том,
что если запрос на страницу приходиn со значением переменной(или это считается не переменной?)
равным: "radio1", то выполняем эту часть кода.
{
        $radio_url="http://radio_url:8000/status.xsl";
        $file=implode("n", file($radio_url));
        $d1=explode('<td>Current Song:</td>', $file);
        $d2=explode('<td class="streamdata">', $d1[1]);
        $d3=explode('</td>', $d2[1]);
        $content_radio="<center>$d3[0]</center></b>";
        echo "$content_radio";
}
if $request[p] == "radio2" // если со значением: "radio2" тогда выполняется эта часть.
{
        $radio_url="http://radio2_url:8000/status.xsl";
        $file=implode("n", file($radio_url));
        $d1=explode('<td>Current Song:</td>', $file);
        $d2=explode('<td class="streamdata">', $d1[1]);
        $d3=explode('</td>', $d2[1]);
        $content_radio="<center>$d3[0]</center></b>";
        echo "$content_radio";
}
?>

Данный код выполняет запрос к статусному файлу icecast, то есть парсит его по простому, и после чего выводит данные. В моём случае это - какая песня на данный момент играет на он-лайн радио.
Выводит данные он в div. В index.php есть этот div:
<div id='now_plaing'></div>
Так же в index.php имеется некоторое количество ссылок:
<a href="http://radio1_url:8000/play" onclick="" class="track track-default">Radio1</a>
<a href="http://radio2_url:8102/ps_128" onclick="" class="track">Radio2</a>

Так вот... Вопрос заключается в том, каким образом возможно изменить переменную: "$plaing_radio" по событию onclick ссылки? Или как данный код можно переработать чтоб была возможность изменения значения переменной по нажатию на ссылку.

Спасибо! С Уважением, Егор!
  • Вопрос задан
  • 4482 просмотра
Решения вопроса 1
@lnked
Скрипт
$(function(){

    var plaing_radio = '<? echo $plaing_radio; ?>',
        interval = null;

    function show( value )  
    {  
        $.ajax({  
            url: "now_plaing_page.php?p=" + value,
            cache: false,  
            success: function(html)
            {
                $("#now_plaing").html(html);
            }
        });
    }

    function runInterval( value )
    {
        interval = setInterval(function() { show( value ); }, 10000 );
    }
    
    function refreshInterval( value )
    {
        clearInterval( interval );
        runInterval( value ) ;

        return false;
    }

    runInterval( plaing_radio ); // забыл добавить что бы таймер сразу начал отсчет
    show( plaing_radio );
});


Ссылки
<a href="http://radio1_url:8000/play" onclick="return refreshInterval( 'play' )" class="track track-default">Radio1</a>
<a href="http://radio2_url:8102/ps_128" onclick="return refreshInterval( 'ps_128' )" class="track">Radio2</a>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы