Jump to content


fwrite error

  • Please log in to reply
2 replies to this topic

#1 jmif96

  • New Members
  • Pip
  • Newbie
  • 6 posts

Posted 31 May 2006 - 12:42 AM

I've created a small php script that writes info for a podcast to a database, then, when a differen't is pressed, it creates an XML file for that. I do this by opening an SML file with the w attribute. However, I always the error statement in my if/else test when I run it. I cant seem to figure out why. I've give the file 777 permissions also.

Heres the part that writes the XML:

function compilePodcastXML() { 

// open file 
$xmlfile = fopen ('podcasts/podcast.xml', "w"); 

// select SQL records 
$sql = "SELECT * FROM podcasts"; 
$result = mysql_query($sql); 
$num = mysql_num_rows($result); 
$podcast = mysql_fetch_array($result); 

// Write first, static part of XML File 
$date = date("D, M d Y H:i:s O"); 
$xml = "<?xml version="1.0\" encoding=\"UTF-8\"?> 
<rss xmlns:itunes=\"http://www.itunes.com/dtds/podcast-1.0.dtd\" version=\"2.0\"> 




    <itunes:category text=\"Transportation\"> 
         <itunes:category text=\"Podcasting\" /> 
    </itunes:category> "; // END STATIC XML 
// write item statements 
for ($i = 0; $i < $num; $i++) { 

$xml .= " 
        <enclosure url=\"".$podcast['mp3url'][$i]."\" length=\"".$podcasts['filesize'][$i]."\" type=\"audio/mp3\" /> 
        <pubDate>".date("D, M d Y H:i:s O", $podcast['pubdate'][$i])."</pubDate> 
        <itunes:author>DVA CRJ Team</itunes:author> 

// finish up xml file 
$xml .= "  </channel> 


if (fwrite ($xmlfile, $sml)) { 
print ("Podcast XML file created successfully."); 
$doneBy = $_SESSION['f_name'].' '.$_SESSION['l_name']; 
$date = time(); 
$query = "INSERT INTO adminLog VALUES ('','Podcast','Publish','$doneBy','$title','$date')"; 
} else { 
print ("Error creating XML file."); 


Any ideas?


#2 poirot

  • Members
  • PipPipPip
  • Advanced Member
  • 646 posts
  • LocationAustin, TX

Posted 31 May 2006 - 02:51 AM

Well, I don't know what happens when you try to use an undefined variable as 2nd argument for fwrite, but that may be your problem:
if (fwrite ($xmlfile, $sml)) {
Shouldn't it be:
if (fwrite ($xmlfile, $xml)) {

~ D Kuang

#3 jmif96

  • New Members
  • Pip
  • Newbie
  • 6 posts

Posted 31 May 2006 - 07:37 PM

Yup that's correct, I hate it when I miss little things like that. However, now I have a differen't problem, when it prints the <item> tags to the xml file it dosen't print the whole string from the database. It prints this:

        <enclosure url="h" length="" type="audio/mp3" />
        <pubDate>Wed, Dec 31 1969 17:00:01 -0700</pubDate>
        <itunes:author>DVA CRJ Team</itunes:author>

I cannot seem to find why it's only printing that. I've checked the databases and there is no problem there. Any ideas?

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users