Demos | PHP & MySQL | Tutorials

David Carr

Load MP3's from a folder with option to play on page

Thus tutorial will show you how to grab videos from a folder and list them on a page, once listed an MP3 file can be clicked on and then played in a player or downloaded.

Player from http://www.alsacreations.fr/dewplayer-en

Source Code

<?php ob_start();?>
<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>MP3 Test</title>
</head>
<body>

<?php

   $dirname = "music/";
   $files = scandir($dirname);
   $ignore = array(".", "..", ".DS_Store");

   echo '<ul>';
   foreach($files as $curfile){
       if(!in_array($curfile, $ignore)) {
           echo "<li><a href='?file=".$curfile."'>$curfile</a></li>n ";
       }
   } 
   echo '</ul>'; 


   if(isset($_GET['file'])){

    $file = $_GET['file'];

    echo '<object type="application/x-shockwave-flash" data="dewplayer.swf" width="200" height="20" id="dewplayer" name="dewplayer">
    <param name="movie" value="dewplayer.swf" />
    <param name="flashvars" value="mp3='.$dirname.$file.'" />
    <param name="wmode" value="transparent" />
    </object>';

    echo '<br /><a href="?download='.$file.'">Download</a>';

   }  

  if(isset($_GET['download'])){

       $file = $dirname.$_GET['download'];
       header ("Content-type: octet/stream");
       header ("Content-disposition: attachment; filename=".$file.";");
       header("Content-Length: ".filesize($file));
       readfile($file);
       exit; 
  }

?>
</body>
</html> 
<?php ob_flush(); ?>

 

Domains are often purchased from multiple providers, keeping track of where a domain is and its DNS settings can be tricky. Domain Mapper solves this by listing all your domains in one place. View your DNS settings and receive reminders to renew your domains. Try it today.

Support my work by donating with PayPal.

Subscribe to my newsletter

Subscribe and get my books and product announcements.

© 2009 - 2021 DC Blog. All code MIT license. All rights reserved.