Coding error assistance needed

Hi all,

I am trying to create an RSS generator but getting the following code error in the code.

This is the error:

XML Parsing Error: XML or text declaration not at start of entity

and the is the code:

echo
'<?xml version="1.0" encoding="ISO-8859-1" ?>

It's pointing here:
<?xml version="1.0" encoding="ISO-8859-1" ?>
^

See arrow above...seems to be the first character?

Hope you can help

thanks

st3vo
ST3VOAsked:
Who is Participating?
 
cevomanConnect With a Mentor Commented:
Hi there,

if there is anything outputted before this line (even a space or newline) it will throw this error

Kind regards
James
0
 
ST3VOAuthor Commented:
When I go to view source it has 3 blank links and then:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<rss version="2.0">
etc...

How do I get rid of lose blank lines...or is that normal?
0
 
ST3VOAuthor Commented:
Full error is:

XML Parsing Error: XML or text declaration not at start of entity
Location: http://127.0.0.1/news/rssfeed.php
Line Number 4, Column 1:
<?xml version="1.0" encoding="ISO-8859-1"?>
^

0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
cevomanCommented:
Hi there,

It's those blank lines which are doing it is anything else "Echoing" before that code is run?
Is it part of a template engine or could you provide the full PHP code?

Kind regards
James
0
 
ST3VOAuthor Commented:
OK, See code attached
<?php
 include("../includes/dbconn.php");
 
 //the variables
$rss_title= "mysite.com RSS Feed";
 
$rss_site= "mysite.com" ;
 
$rss_description= "Welcome to mysite.com News RSS Feed!";
 
$rss_language="en";
 
$rss_logo="http://www.".$rss_site."/images/rss.jpg";
 
$emailadmin="st3vo@mysite.com"; 
 
header("Content-Type: text/xml;charset=iso-8859-1"); 
 
 
$query = "select * from tbl_news ORDER BY id DESC";
 
$result = mysql_query($query) or die("Query failed"); 
 
?>
 
<?php echo '<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
<channel>
<title>'.$rss_title.'</title>
<link>http://www.'.$rss_site.'</link>
<description>'.$rss_description.'</description>
<language>en-en</language>
<image>
<url>'.$rss_logo.'</url>
<title>'.$rss_site.'</title>
<link>http://www.'.$rss_site.'</link>
</image>'; 
 
//RSS loop 1
for($i=0;$i<6; $i++)
{
 
//etc....

Open in new window

0
 
cevomanCommented:
Without knowing what dbconn.php is outputting (if there are any spaces before or after the code in the file)
remove the space from line 25

infact... remove line 24,25 and 26 and check the dbconn.php file

kind regards
James
0
 
ST3VOAuthor Commented:
OK it now looks like this:

and the dbconn include is:

<?php
$con = mysql_connect("localhost","root","");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

mysql_select_db("db2", $con) or
  die('Could not select the database: '.mysql_error());


?>

hope this helps...still got the same error btw

<?php
 include("../includes/dbconn.php");
 
 //the variables
$rss_title= "mysite.com RSS Feed";
 
$rss_site= "mysite.com" ;
 
$rss_description= "Welcome to mysite.com News RSS Feed!";
 
$rss_language="en";
 
$rss_logo="http://www.".$rss_site."/images/rss.jpg";
 
$emailadmin="st3vo@mysite.com"; 
 
header("Content-Type: text/xml;charset=iso-8859-1"); 
 
 
$query = "select * from tbl_news ORDER BY id DESC";
 
$result = mysql_query($query) or die("Query failed"); 
 
echo '<?xml version="1.0" encoding="ISO-8859-1"?>
<rss version="2.0">
<channel>
<title>'.$rss_title.'</title>
<link>http://www.'.$rss_site.'</link>
<description>'.$rss_description.'</description>
<language>en-en</language>
<image>
<url>'.$rss_logo.'</url>
<title>'.$rss_site.'</title>
<link>http://www.'.$rss_site.'</link>
</image>'; 
 
//RSS loop 1
for($i=0;$i<6; $i++)
{
 
//etc....

Open in new window

0
 
cevomanCommented:
I've just tested the code below seperately and a RSS reader reads it fine, what is producing the error?
	 //the variables
$rss_title= "mysite.com RSS Feed";
 
$rss_site= "mysite.com" ;
 
$rss_description= "Welcome to mysite.com News RSS Feed!";
 
$rss_language="en";
 
$rss_logo="http://www.".$rss_site."/images/rss.jpg";
 
$emailadmin="st3vo@mysite.com"; 
 
header("Content-Type: text/xml;charset=iso-8859-1"); 
 
	echo '<?xml version="1.0" encoding="ISO-8859-1"?>
	<rss version="2.0">
	<channel>
	<title>'.$rss_title.'</title>
	<link>http://www.'.$rss_site.'</link>
	<description>'.$rss_description.'</description>
	<language>en-en</language>
	<image>
	<url>'.$rss_logo.'</url>
	<title>'.$rss_site.'</title>
	<link>http://www.'.$rss_site.'</link>
	</image>';

Open in new window

0
 
ST3VOAuthor Commented:
Sorted now...it was the spacing...had to get rid of some closing tags as they appear to create blank space, so all cool here..thanks for your help!

0
 
ST3VOAuthor Commented:
cheers :o)
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.