2009-07-21 6 views
1

J'ai une simple page PHP pour télécharger des fichiers qui contient ce code.page de téléchargement interuptant flash streaming en safari

header('Content-Type: application/octet-stream'); 
header('Content-Disposition: attachment; filename="' . $name . '"'); 
readfile("$file"); 

Ceci télécharge le peu de musique que j'écoute dans un lecteur flash simple.

Pour une raison quelconque dans le dernier Safari 4.0 Lorsque le code de téléchargement est exécuté, il interrompt le chargement de la chanson sur le lecteur flash.

Fondamentalement, il fait agir le lecteur flash comme s'il avait atteint la fin du fichier et tout chargé.

Des idées?

Répondre

0

Un peu hacky, mais vous pouvez intégrer un iframe caché sur la page et faire en sorte que le lien de téléchargement utilise (href = "download.php? Filename = quelque chose" target = "iframe_name"). Comme je l'ai dit, un peu boiteux, mais cela (théoriquement) ferait l'affaire puisque vous ne redirigez pas la page techniquement.

+0

J'ai un iframe caché que j'utilise pour d'autres choses et je pensais essayer. Une idée de pourquoi Safari fait cela et pas d'autres navigateurs? – ian

+0

Honnêtement, je ne ... je ne peux que spéculer que cela a à voir avec la façon dont webkit traite les redirections de pages (coupe peut-être toutes les connexions actives avant de résoudre le nouvel emplacement?) –

Questions connexes