When I run player.php it’s giving this error:
Warning: Cannot modify header information - headers already sent by (output started at /www/110mb.com/m/u/s/i/c/k/i/n/musicking/htdocs/player.php:8) in /www/110mb.com/m/u/s/i/c/k/i/n/musicking/htdocs/player.php on line 24
Can you please help?
<!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=utf-8' /> <title>Player</title> </head> <body> <?php if(isset($_POST['song'])&& $_POST['song'] != '') { $song = $_POST['song']; } else {$song=array();} for ($i='0'; $i<count($song); $i++) { } //start of new php codep // create doctype //$array = array( // 'song.mp3','song.mp3','song.mp3', //); $dom = new DOMDocument('1.0'); // display document in browser as plain text // for readability purposes header('Content-Type: text/plain'); // create root element $root = $dom->createElement('xml'); $dom->appendChild($root); $i = '1'; foreach ($song as $counter) { // create child element $song = $dom->createElement('track'); $root->appendChild($song); $song1 = $dom->createElement('path'); $song->appendChild($song1); // create text node $text = $dom->createTextNode($counter); $song1->appendChild($text); $song1 = $dom->createElement('title'); $song->appendChild($song1); $text = $dom->createTextNode('song '.$i); $song1->appendChild($text); $i++; } // save and display tree $dom->save('playlist.xml'); ?> <script type='text/javascript' src='swfobject.js'> </script> <div id='flashPlayer'> This text will be replaced by the flash music player. </div> <script type='text/javascript'> var so = new SWFObject('playerMultipleList.swf', 'mymovie', '295', '200', '7', '#FFFFFF'); so.addVariable('autoPlay','yes') so.addVariable('playlistPath','playlist.xml') so.write('flashPlayer'); </script> </body> </html>
The error message is triggering because of the HTML that appears before your first
<?phptag. You cannot output anything beforeheader()is called. To fix this error start your document with the<?phptag and only start outputting HTML after you are done handling the condition that outputs XML for flash.A cleaner solution would be to separate out the XML generation for flash and the HTML output into different files.