i have a question. my function works in a way that once user clicks the link, the open save dialog box will pop out then the user have a option to choose whether to open or save the mp3 file.

The problem is the save function can wrk meaning if user save the mp3 file and listen, everything is ok. But when the user try to open the file straight away, the mp3 file cannot be open. There will be an error msg. I do not knoe how to go abt to solve this error.

is there a way to enable the user to open the file straight away once the link is clicked? i have try to put a link to the mp3 file but that would result in the user from seeing the location of the mp3 file. I have try to mask the url but then if the user clicks view source, the user would be able to see the location of mp3 file.

Below is the codes that cause the open save dialog box to pop out

$currentdir = '../mp3';

$filename = "$trackname.mp3";
$pathname = "$currentdir/$filename";	
					
$fr   = fopen($pathname, 'r');
$filedata = fread($fr, filesize($pathname));
fclose($fr);
					
header ( 'Content-Length: ' . filesize ( $pathname ) );
header("Content-type: application/octet-stream");
header("Content-disposition: attachment; filename=$filename");
readfile($pathname);

Please use code tags next time. I have formatted your post.

Edited 3 Years Ago by pritaeas: Removed bbcode suggestion.

Your code was missing some quotations as well, so I took the liberty to add them in. You probably just didn't copy and paste the text, right? :)

Is this 'Open/Save' dialog box that you are talking about a part of your actual script or is it the download manager associated with the browser?

think it's the download manager associated with the browser. it's not part of my script

Your code was missing some quotations as well, so I took the liberty to add them in. You probably just didn't copy and paste the text, right? :)

i did copy n paste though. wat are quotations by the way?

i did copy n paste though. wat are quotations by the way?

Well for

$currentdir = '../mp3';

it used to be

$currentdir = '../mp3;

Well for

$currentdir = '../mp3';

it used to be

$currentdir = '../mp3;

oh i @@. oops oh well.... my code no error though else the web will show up blank. think i must have copy wrongly

cannot see it online though. so what should i do now? also i have this concern that i will violated the company's policy by showing you the script

Hi, i'm facing a similar error. One downloading a.xls using header in php, save works fine, but open gives an error in IE only.
Solutions?

Hello,
The downloading error was fixed by using caching.
Thanks and Regards,
VT.

Hi, i'm facing a similar error. One downloading a.xls using header in php, save works fine, but open gives an error in IE only.
Solutions?

This article has been dead for over six months. Start a new discussion instead.