Foros del Web » Programación para mayores de 30 ;) » Programación General »

Error de lectura XML: declaración de texto o XML en un lugar distinto del....

Estas en el tema de Error de lectura XML: declaración de texto o XML en un lugar distinto del.... en el foro de Programación General en Foros del Web. Bueno explico mi problema: Mi RSS no me funciona este es el error que me da: Código: Error de lectura XML: declaración de texto o ...
  #1 (permalink)  
Antiguo 28/03/2009, 12:30
 
Fecha de Ingreso: mayo-2008
Mensajes: 13
Antigüedad: 16 años, 7 meses
Puntos: 0
Error de lectura XML: declaración de texto o XML en un lugar distinto del....

Bueno explico mi problema:

Mi RSS no me funciona este es el error que me da:

Código:
Error de lectura XML: declaración de texto o XML en un lugar distinto del principio de la entidad
Ubicación: foro1.byethost4.com/web/rss.xml
Número de línea 2, columna 1:<?xml version="1.0" encoding="UTF-8"?>
^
El codigo del php:

Código:
<?php
header ("Content-type: text/xml");


define('_VALID_INCLUDE', TRUE);

$ispopup = "1";
$isrss = "1";
include "core.php";
defined('_VALID_CRINC') or die();

echo ("<?xml version=\"1.0\" encoding=\"UTF-8\"?>
<rss version=\"2.0\">");
?>
<channel>
<title><?echo "$sitename"?> RSS Feed</title>
<?php

$result = mysql_query("SELECT * FROM ccms_news ORDER BY id DESC limit 10");
while ($row = mysql_fetch_array ($result)) {

	//$text = iconv("US-ASCII","US-ASCII//IGNORE", $row[prev_news]);
	$title = mb_convert_encoding($row[title],"HTML-ENTITIES","UTF-8");
	$text = mb_convert_encoding($row[prev_news],"HTML-ENTITIES","UTF-8");
	$title_start = preg_replace('/[^a-zA-Z0-9 *]/', '', $row[title]);
	$title_seo = str_replace(' ', '-', $title_start);

	$pub_date = date('D, j M Y H:i:s A', $row[timestamp]);

	if (!$row[timestamp]) {
		$dateposted = $row[date];
	} else {
		$dateposted = $row[timestamp];
	}

    echo ("<item>
	<title>$title</title>
	<description>$text</description>
	<link>$siteurl/story-$row[id]-$title_seo.html</link>
	<pubDate>$pub_date</pubDate>
	</item>");
}

mysql_free_result($result);
?>
</channel>
</rss>
Creo que esta toda la info si alguien me puede decir como solucionarlo y explicarme porque me ocurria eso.
  #2 (permalink)  
Antiguo 28/03/2009, 22:47
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

Sería mejor que colocaras la salida real de ese código.
  #3 (permalink)  
Antiguo 28/03/2009, 22:50
 
Fecha de Ingreso: mayo-2008
Mensajes: 13
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

A que te refieres con la salida real?
  #4 (permalink)  
Antiguo 28/03/2009, 22:55
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

A lo que te aparece en el navegador cuando usás la opción ver código fuente. Si no, sólo vemos código php y parcial (no sabemos qué hay en los includes y mucho menos qué hay en la db.)
  #5 (permalink)  
Antiguo 29/03/2009, 15:03
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

El problema es que hay un espacio o salto de línea antes de la declaración xml:
Código PHP:
/*aquí  hay un espacio*/
<?xml version="1.0" encoding="UTF-8"?>
Quitando ese espacio funciona perfectamente.
  #6 (permalink)  
Antiguo 29/03/2009, 15:52
 
Fecha de Ingreso: mayo-2008
Mensajes: 13
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

Srry por mi ignorancia pero recien toy aprendiendo php y de RSS no caxaba nada =s

Tu te refieres a este?:

Código PHP:

echo ("<?xml version="1.0\" encoding=\"UTF-8\"?>
Porque quite el espacio que tiene ese en el rss.php y sigue dando el mismo error =s
  #7 (permalink)  
Antiguo 30/03/2009, 04:01
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

Hay algun espacio que está perjudicando. Podrías usar funciones de control de salida para eliminarlos. Para eso, al principio de ti código deberías colocar algo como esto:
Código PHP:
<?php 
ob_start
('limpiar');
function 
limpiar($buffer){
    return 
trim($buffer);
}
?>
Y al final:
Código PHP:
<?php 
ob_end_flush
();
?>
De esa manera eliminarías el o los espacios que están molestando.
  #8 (permalink)  
Antiguo 30/03/2009, 14:54
 
Fecha de Ingreso: mayo-2008
Mensajes: 13
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

Puse el codigo que me dijiste y ahora me muestra el RSS pero no como deberia:

Código:
Este fichero XML no parece tener ninguna información de estilo asociada. Se muestra debajo el árbol del documento.
      
−
<rss version="2.0">
−
<channel>
<title>One Shot - Tu comunidad Gamer RSS Feed</title>
−
<item>
<title>asd</title>
<description>asdasdasd</description>
<link>foro1.byethost4.com/web/story-2-asd.html</link>
<pubDate>Mon, 30 Mar 2009 16:39:39 PM</pubDate>
</item>
−
<item>
<title>Nueva Web</title>
−
<description>
Se esta trabajando en esta nueva web que es mas completa.
</description>
−
<link>
foro1.byethost4.com/web/story-1-Nueva-Web.html
</link>
<pubDate>Fri, 13 Mar 2009 21:51:41 PM</pubDate>
</item>
</channel>
</rss>
Echale una mirada en la direccion: foro1.byethost4.com/web/rss.xml
PD: no puse el www ni el http ya que no me lo permite el foro.

Tuve que dejar el codigo que me dijiste puesto porque al sacarlo me tira el mismo error mencionado anteriormente (arriba).
  #9 (permalink)  
Antiguo 30/03/2009, 16:37
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

Yo lo veo sin inconvenientes en Explorer y Firefox.
  #10 (permalink)  
Antiguo 30/03/2009, 17:09
 
Fecha de Ingreso: mayo-2008
Mensajes: 13
Antigüedad: 16 años, 7 meses
Puntos: 0
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

Te pasaste perro fuiste de demasiada ayuda ^^.

Ya tengo mi RSS funcionando y tambien de pasada aprendi lo basico ahora solo falta aprender PHP XD
  #11 (permalink)  
Antiguo 30/03/2009, 19:09
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años, 6 meses
Puntos: 834
Respuesta: Error de lectura XML: declaración de texto o XML en un lugar distinto del.

Me alegra que te haya servido
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:16.