Visualizzare il pannello di una webradio

A T T E N Z I O N E ! Questo post ha piu' di sei mesi. Le informazioni contenute potrebbero non essere aggiornate.

Nella colonna a lato ci sono i pannelli di RadioNation 1 e Radio Wittgenstein, che appaiono solo quando le rispettive radio sono in onda, altrimenti spariscono.
I pannelli sono generati da uno script PHP, per il quale mi sono basato sul plugin per WordPress WP-Shoutcast, creato da Chris Curtis.
L’unico requisito è il supporto PHP sul server che ospita il vostro sito/blog. Se le vostre pagine sono PHP l’utilizzo è estremamente semplice, basta includere lo script nel codice della pagina con un <?php include 'radio.php'; ?>, ed in qualunque punto della pagina chiamare la funzione shoutcast con la seguente sintassi:
<?php shoutcast ("Server", "Port", "StationName", "ShowListener") ?> dove:
Server = url della radio;
Port = porta TCP;
StationName = il nome che volete mostrare nel pannello;
ShowListener = 1: mostra audience, 0: non la mostra.
Esempio: <?php shoutcast ("www.radionation.it", "8080", "RadioNation 1", "1") ?>; visualizza un pannello con i dettagli di RadioNation 1, mostrando anche il numero di ascoltatori. Il titolo del brano è cliccabile.
L’aspetto del pannello è controllabile tramite tre classi CSS:
.radio = è il contenitore per tutto il pannello;
.station = il <div> con il nome della radio;
.playing = tutto il resto;

Se la vostra pagina è HTML, dovete includere il codice in un IFRAME, ad esempio:
<iframe src="radio.php" width="250" height="150" frameborder="0" marginheight="0" marginwidth="0" name="shoutcast" scrolling="no"></iframe>
Variate width e height per adattare le dimensioni secondo le vostre esigenze.
Lo script è prelevabile qui, l’archivio contiene il codice ed un esempio di CSS che potete includere nel vostro foglio di stile.

Nei commenti, il link al listato riveduto e corretto da Axap (grazie).

(Chiedo scusa agli esperti per le stupidaggini che dovessero trovare nello script: la mia conoscenza di PHP è prossima allo zero, mi sono limitato ad usare un approccio “ruspante”.)

13 pensieri riguardo “Visualizzare il pannello di una webradio

  1. @axap, certo che ti puoi permettere, grazie!
    La tua versione molto pi pulita, ma mi risulta oscura in alcuni punti. Sarebbe bello ed istruttivo che commentassi le modifiche.
    L’avevo detto che non so nulla di PHP 🙁

  2. C’ poco da dire… ho solo migliorato il ciclo precedente con questo:
    for($i=0;$i(.+?)/”,”\1″,$fp_data);

    prima ce n’erano due… ho racchiuso tutto in una 🙂

    Alla fine poi c’erano delle variabili, e degli echo che le stampavano tutte separate fra di loro; un else che non serviva a niente e un echo che stampava una variabile mai dichiarata. Boh.
    Anche l ho solo attaccato tutto insieme in una unica echo, e ho segato via la else inutile.

  3. Ehi, sto wordpress mi ha mangiato pi di mezzo commento. Accidenti a lui, la seconda volta che spacca tutto!

    Beggi, fai l’ultimo sforzo: cancella gli ultimi due commenti, che la faccio finita, scusami.
    Ora vado a regolare i miei conti in privato con wordpress. 😀

    In compenso sappi che avevo scritto un bel commentino, e mi ero impegnato almeno per due minuti. 🙁

  4. Ho fatto copia incolla del listato su pastebin cio:
    —————————————————————————————————————————————————————————————————-

    function shoutcast ($host, $port, $station, $showaudience)
    {
    // Connect to server
    $fp=@fsockopen($host,$port,$errno,$errstr,10);
    if($fp)
    {
    // Get data from server
    fputs($fp,”GET /7 HTTP/1.1\nUser-Agent:Mozilla\n\n”);
    for($i=0;$i(.+?)/”,”\\1″,$fp_data);

    // Place values from source into variable names
    list($current,$status,$peak,$max,$reported,$bit,$song) = explode(“,”, $fp_data, 7);

    /*
    current = current listener
    status = 1 (online); 0 (offline)
    peak = listener peak
    max = max listener allowed
    reported = unique current listener
    bit = bitrate
    song = song title
    */

    if($status)
    {
    echo “$station”.
    “Sta trasmettendo:”.
    $song“;
    if($showaudience) echo “Ascoltatori: $current”;
    echo “\n”;
    }
    }
    }
    ————————————————————————————————————

    Ho fatto con Notepad un file .php

    chiamato radio.php

    l’ho lanciato tramite il server virtuale wampserver e mi d questo:

    function shoutcast ($host, $port, $station, $showaudience) { // Connect to server $fp=@fsockopen($host,$port,$errno,$errstr,10); if($fp) { // Get data from server fputs($fp,”GET /7 HTTP/1.1\nUser-Agent:Mozilla\n\n”); for($i=0;$i(.+?)/”,”\\1″,$fp_data); // Place values from source into variable names list($current,$status,$peak,$max,$reported,$bit,$song) = explode(“,”, $fp_data, 7); /* current = current listener status = 1 (online); 0 (offline) peak = listener peak max = max listener allowed reported = unique current listener bit = bitrate song = song title */ if($status) { echo ”
    $station
    “. ”
    Sta trasmettendo:
    “. “$song
    “; if($showaudience) echo “Ascoltatori: $current”; echo ”
    \n”; } } }

    Domanda: mi dovrebbe comparire la mascherina di Radio Nation? come fa un file php a riprodurre una immagine? Mi dovrebbe riprodurre una cosa simile a questo dal blog di Chris Curtis????????????????

    Whole Wheat Radio
    On-air
    Programme/Song
    Jimmy McCracklin – After Hours
    Bitrate: 56 kpbs
    Listeners: 21 / 70
    Tutto qui!Questa visualizzazione della web radio per un neofita incomprensibile!

  5. Ciao a tutti
    Ho un blog su splinder
    In questo blog ho inserito un link alla mia webradio.
    Il link è semplicemente una immagine..pero sotto questa immagine vorrei inserire qualcosa che faccia capire quando la radio trasnette e quando non trasmette..potete aiutarmi?
    Grazie

  6. ciao anche io mi associo a complimenti che ti hanno fatto ma non ci capisco niente perche nel mio schout cast quella roba li non ho quello denominato ini
    tu non hai ache pagandoti per il tempo che mi dedicherai
    un pacchetto autoistallante di questo odi altri programmi tipo sam o non so cosa per aiutarmi per favore sono un trapiantato di cuore malriuscito e non posso molto muovermi vedi tu cosa puoi fare grazie anticipatamente e scusami per il disturbo

  7. ma non si potrebbe mettere il codice direttamente nell’articolo?? sempre su hosting free che dopo 2 mesi eliminano tutto

I commenti sono chiusi