Toon posts:

bestand met php aanbieden

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb zitten zoeken naar de mogelijkheid met php een download te starten zodra iemand een pagina aanklikt. De file die voor download aangeboden wordt is een binaire file, bijvoorbeeld een mp3 file.
Ik zit momenteel te experimenteren met Content-Disposition:attachment in de header maar wat ik ook doe een download komt niet op gang. Ik weet van de problemen met IE 5.5 en 4.01 maar ook in netscape 4.7 en opera 6 gebeurt er niks. De html file die geproduceerd wordt door de php code ziet er in essentie als volgt uit:
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta "Content-Type=application/download">
<meta "Content-Disposition : attachment; filename=/audio/Forbidden_Planet.mp3.bin">
<html><title>TST</title>
<body>BLA BLA</body></html>

Kan iemand me een hint geven wat hier niet aan klopt?
Moet er bijvoorbeeld een Transfer_encoding regel worden toegevoegd?

Tia,

Zaphod B.

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 11:37

.oisyn

Moderator Devschuur®

Demotivational Speaker

Programming & Webscripting -> Webdesign & Graphics

dis iets voor de webdesigners ;)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

meta tags zijn niet bedoeld om http headers aan te maken; je zult de content-type en disposition dus met php moeten sturen gevolgd door de file-stream:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
  $file = "Forbidden_Planet.mp3.bin";
  $path = "/audio/";             # Path to the download file

  if ($fp=@fopen($path.$file,"r")) {

    header("Content-type: application/download");
    header("Content-Disposition: attachment; filename=$file");
    header("Pragma: no-cache");
    header("Expires: 0");
    @fpassthru($fp);

  } else {

    echo "file not found";

  }


toch meer /14 dus ;)

Intentionally left blank


Verwijderd

Topicstarter
Sorry, ik had ff niet in de gaten dat ik in het verkeerde forum zat. Ik heb bij de scripting zitten kijken maar vermoedelijk ergens verkeerd doorgeklikt. Ik zal de bovenstaande code proberen. Bedankt!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 11:37

.oisyn

Moderator Devschuur®

Demotivational Speaker

mmja als het om die php code gaat moet ie toch weer terug naar Programming & Webscripting :P

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

Bij deze verplaatsen we hem dan maar naar /14 :)

Verwijderd

Topicstarter
Groovy ! Dit werkt. Ik heb alleen nog ff documentroot aan het pad van de file toe moeten voegen, maar dat is een kleinigheid. Thx ! Werkt dit nu ook met IE5.5 en 4.01 ?

  • bras
  • Registratie: Oktober 2000
  • Laatst online: 13-08 14:08
In dit topic heb ik ooit de vraag gesteld om vooruit te kunnen spoelen in mp3's. Hierbij staat ook wat code om mp3's te streamen (die er heel erg als het bovenstaande uitziet :))

De $headers["Range"] variabele geeft aan of en waar naar toe gespoeld moet worden.

"When you find yourself in the company of a halfling and an ill-tempered Dragon, remember, you do not have to outrun the Dragon...you just have to outrun the halfling."

Pagina: 1