Estou com um pequeno problema. Tenho um script que gera um arquivo XML (RSS) dinamicamente, pelo PHP, com dados vindos do MySQL. Só que esse script tá gerando o seguinte erro:
Referência à entidade 'nbsp' não definida. Erro ao processar o recurso 'http://rss.joao.mus.br/noticias/rssBrasil.php'. Li...
<item><pubDate>21/12/2007</pubDate><title>11,4 mil brasileiros têm 100 anos de idade ou mais</tit...
Olhei o script todo mas não consegui detectar a causa do problema. Abaixo coloco o script.
Alguém consegue me dizer o que tá gerando esse erro? A única coisa que detectei é que algo tem a ver com o famoso " ", que é o espaço na linguagem HTML, porém não identifiquei o que isso tem a ver com o problema em questão.
Pergunta
©JOÃO GABRIEL MARQUES
Olá mestres,
Estou com um pequeno problema. Tenho um script que gera um arquivo XML (RSS) dinamicamente, pelo PHP, com dados vindos do MySQL. Só que esse script tá gerando o seguinte erro:
Olhei o script todo mas não consegui detectar a causa do problema. Abaixo coloco o script.<? #Declaramos o tipo de documento que geraremos header("Content-Type: application/xml; charset=ISO-8859-1"); #Declaramos a data e hora de expiração deste documento (esta como sendo 26/07/1997 para forçar a leitura deste PHP sem que ele esteja em cache) header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); #Declaramos a data e hora da última modificação deste documento (sempre sendo a data e hora que ele estiver sendo acessado) header("Last-Modified: ". gmdate("D, d M Y H:i:s") ." GMT"); #Declaramos os controles de cache para não permitir nenhum tipo de cache e para forçar a leitura deste PHP sem que ele esteja em cache header("Cache-Control: no-store, no-cache, must-revalidate"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); #Declaramos a versão do XML utilizada e seu encoding echo "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?" . ">\n"; echo "<rss version=\"2.0\">\n"; #Aqui começa os itens básicos do canal echo "\t<channel>\n"; echo "\t\t<title>JG Notícias :: Brasil</title>\n"; echo "\t\t<link>http://noticias.joao.mus.br/</link>\n"; echo "\t\t<description>Mantenha-se informado(a) com as últimas notícias do Brasil e do mundo através do JG Notícias, agora disponível no formato RSS.</description>\n"; echo "\t\t<language>pt-br</language>\n"; echo "\t\t<copyright>©Copyright 2007-2008 :: JG Notícias :: Todos os direitos reservados.</copyright>\n"; echo "\t\t<webMaster>joao@joao.mus.br</webMaster>\n"; echo "\t\t<image>\n"; echo "\t\t\t<url>../img/logo-noticias-hp.gif</url>\n"; echo "\t\t\t<link>http://noticias.joao.mus.br/</link>\n"; echo "\t\t</image>\n"; #Conexão ao banco de dados $conexao = mysql_connect("localhost", "usuario", "senha"); $db = mysql_select_db("joaomus_noticias"); #Realizando o SELECT dos dados para gerar o feed RSS a partir deles (é utilizado o limite de 15 registros para o feed não ficar muito extenso) $sql = "SELECT * FROM tbNoticias WHERE editoria = 'brasil' AND publicar = '1' ORDER BY idNoticia DESC LIMIT 15"; $resultado = mysql_query($sql) or die (mysql_error()); while ($linha=mysql_fetch_array($resultado)) { $data = $linha['data']; $data2 = date("d/m/Y", strtotime($linha['data'])); $hora = $linha['hora']; $hora2 = date("h:i", strtotime($linha['hora'])); $autor = $linha['autor']; $editoria = $linha['editoria']; $idNoticia = $linha['idNoticia']; $titulo = $linha['titulo']; $descricao = $linha['linhafina']; echo "<item>"; echo "<pubDate>$data2</pubDate>"; echo "<title>$titulo</title>"; echo "<link>http://noticias.joao.mus.br/$editoria/exibe_noticia.php?editoria=$editoria&idNoticia=$idNoticia</link>"; echo "<description>$descricao. ($data2 - $hora2 h) <strong>$autor</strong></description>"; echo "</item>"; } echo "\t<channel>\n"; echo "\t</rss>\n"; ?>Alguém consegue me dizer o que tá gerando esse erro? A única coisa que detectei é que algo tem a ver com o famoso " ", que é o espaço na linguagem HTML, porém não identifiquei o que isso tem a ver com o problema em questão.
Obrigado pelo help!
Link para o comentário
Compartilhar em outros sites
17 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.