Jump to content
Cristiano Siqueira

Como ler XML e inserir em Div a cada segundo?

Recommended Posts

Cristiano Siqueira

Antes de tudo venho humildemente agradecer qualquer ajuda que possam me fornecer.

Possuo uma web radio e gostaria de a cada x segundos (suponha 3) ele acessa-se o xml e mostra-se a musica atual , sem dar reload na pagina. Tenho o script inacabado abaixo e ja pesquisei muito no google e de todas as opções nenhuma delas me retornou o resultado desejado, substitui o endereço do xml mas irei postar o exemplo de como é a estrutura dele

O codigo que tenho
 

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<?php
$xml = simplexml_load_file("http://servidor/api/asdasdsadsadsdasdasadasdsadsd"); //apenas mudei a url 
$mat = $xml->musica_atual; 
?> 

<script>
 $(function() {
   chkmus();
   function chkmus() {
      var string =  // Não sei como proceder daqui
      setTimeout(chkmus, 3000);
      $('#player-conteudo-musica').html(string);
   }
 });

</script>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Radio</title>
</head>
<body>
<marquee><div id="player-conteudo-musica">
</div></marquee>
</body>
</html>

abaixo a estrutura do xml.:

<info>
<status></status>
<porta></porta>
<porta_dj></porta_dj>
<ip></ip>
<ouvintes_conectados></ouvintes_conectados>
<titulo></titulo>
<plano_ouvintes></plano_ouvintes>
<plano_ftp></plano_ftp>
<plano_bitrate></plano_bitrate>
<musica_atual></musica_atual>
<proxima_musica></proxima_musica>
<genero></genero>
<shoutcast></shoutcast>
<rtmp></rtmp>
<rtsp></rtsp>
<capa_musica/>
</info>

Desde já o meu muito obrigado pela qualquer ajuda que possam me fornecer

Share this post


Link to post
Share on other sites
M6

Usa AJAX + JSON para isso.
Vejo que já tens jQuery, pelo que na página tens de fazer algo assim:

$.ajax({ 
    type: 'GET', 
    url: 'http://teu.servidor/manipulaxml.php', 
    dataType: 'json',
    success: function (data) { 
        $.each(data, function(index, element) {
            $('#player-conteudo-musica').html(element.titulo);
        });
    }
});

E no teu servidor tens de ter o manipulaxml.php lês o XML e devolves a resposta em formato JSON.


10 REM Generation 48K!
20 INPUT "URL:", A$
30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50
40 PRINT "404 Not Found"
50 PRINT "./M6 @ Portugal a Programar."

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.