user1881090
user1881090

Reputation: 741

How to play my audio file in jplayer audio player?

I am trying to set up a Jplayer audio player. I have almost completed it but I want to know how to play my selected audio file from using $GET method and retrieving from database?

Here is link to audio player page which is suppose to play a file known as Kalimba.mp3 which the file is stored in the directory AudioFiles/Kalimba.mp3.

Audio Play page

Below is link to jplayer instructions (commented line where error is)

http://www.jplayer.org/latest/quick-start-guide/

Below is the code I currently have, I commented line number where error is:

<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <title>Preview Audio</title>
    <link type="text/css" href="jquery/skin/jplayer.blue.monday.css" rel="stylesheet" />
    <script type="text/javascript" src="jquery/jquery-1.7.min.js"></script>   
    <script type="text/javascript" src="/jquery/jquery.jplayer.min.js"></script>
    <script type="text/javascript">   
        $(document).ready(function(){
      $("#jquery_jplayer_1").jPlayer({
        ready: function () {
          $(this).jPlayer("setMedia", { 
            mp4: "http://www.jplayer.org/audio/m4a/Miaow-07-Bubble.mp4",
            ogg: "http://www.jplayer.org/audio/ogg/Miaow-07-Bubble.ogg"
            mp3: "http://www.jplayer.org/audio/m4a/Miaow-07-Bubble.mp3",
            wav: "http://www.jplayer.org/audio/ogg/Miaow-07-Bubble.wav"
          });
        },
        swfPath: "/jquery",
        supplied: "mp4, ogg, mp3, wav"  // ERROR SHOWN HERE
      });
    }); 
    </script>  
</head>

<body>

<?php

$getaudio = 'AudioFiles/' . $_GET['filename'];

$audioquery = "SELECT AudioFile FROM Audio WHERE (AudioFile = ?)";

        if (!$audiostmt = $mysqli->prepare($audioquery)) {
        // Handle errors with prepare operation here
}


// Bind parameter for statement
$audiostmt->bind_param("s", $getaudio);

// Execute the statement
$audiostmt->execute();

            if ($audiostmt->errno) 
            {
                // Handle query error here
            }

$audiostmt->bind_result($dbAudioFile); 

$audiostmt->fetch(); 

$audiostmt->close(); 

?>

  <div id="jquery_jplayer_1" class="jp-jplayer"></div>
  <div id="jp_container_1" class="jp-audio">
    <div class="jp-type-single">
      <div class="jp-gui jp-interface">
        <ul class="jp-controls">
          <li><a href="javascript:;" class="jp-play" tabindex="1">play</a></li>
          <li><a href="javascript:;" class="jp-pause" tabindex="1">pause</a></li>
          <li><a href="javascript:;" class="jp-stop" tabindex="1">stop</a></li>
          <li><a href="javascript:;" class="jp-mute" tabindex="1" title="mute">mute</a></li>
          <li><a href="javascript:;" class="jp-unmute" tabindex="1" title="unmute">unmute</a></li>
          <li><a href="javascript:;" class="jp-volume-max" tabindex="1" title="max volume">max volume</a></li>
        </ul>
        <div class="jp-progress">
          <div class="jp-seek-bar">
            <div class="jp-play-bar"></div>
          </div>
        </div>
        <div class="jp-volume-bar">
          <div class="jp-volume-bar-value"></div>
        </div>
        <div class="jp-time-holder">
          <div class="jp-current-time"></div>
          <div class="jp-duration"></div>
          <ul class="jp-toggles">
            <li><a href="javascript:;" class="jp-repeat" tabindex="1" title="repeat">repeat</a></li>
            <li><a href="javascript:;" class="jp-repeat-off" tabindex="1" title="repeat off">repeat off</a></li>
          </ul>
        </div>
      </div>
    </div>
  </div>


</body>

Upvotes: 0

Views: 3588

Answers (1)

user1830984
user1830984

Reputation: 859

This code below should do the trick:

$getaudio = 'AudioFiles/' . $_GET['filename'];

$audioquery = "SELECT AudioFile FROM Audio WHERE (AudioFile = ?)";

        if (!$audiostmt = $mysqli->prepare($audioquery)) {
        // Handle errors with prepare operation here
}


// Bind parameter for statement
$audiostmt->bind_param("s", $getaudio);

// Execute the statement
$audiostmt->execute();

            if ($audiostmt->errno) 
            {
                // Handle query error here
            }

$audiostmt->bind_result($dbAudioFile); 

$audiostmt->fetch(); 

$audiostmt->close(); 

$info = pathinfo($dbAudioFile); 

Upvotes: 1

Related Questions