[PHP] Wymuszanie pobrania pliku.

0

Witam, chcę wymusić pobranie pliku, ale tak żeby dodać do niego rozszerzenie.

http://soaddicted.wrzuta.pl/aud/file/1uImRnPHCD/2pac_-_dear_mama
powyższy link ściąga plik poprawnie, ale rozszerzenie trzeba ustawiać ręcznie.

Wymuszanie ściągania zrobiłem w ten sposób:

<?php
$url    = 'http://soaddicted.wrzuta.pl/aud/file/1uImRnPHCD/2pac_-_dear_mama';
$head    = get_headers($url, 1);
header ('HTTP/1.1 301 Moved Permanently');
header ('Location: '.$head['Location']);
?>

Czy potrafi ktoś tak udoskonalić ten kod, aby dodawał on automatycznie rozszerzenie .mp3 do pliku?

0

kod z manuala

<?php
// przesyłamy plik PDF
header('Content-type: application/pdf');

// ustawiamy jego nazwę na downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// treść znajduje się w pliku original.pdf
readfile('original.pdf');
?> 
0
<?php
$url    = 'http://soaddicted.wrzuta.pl/aud/file/1uImRnPHCD/2pac_-_dear_mama';
$head    = get_headers($url, 1);
$url = parse_url($head['Location']);
header ('HTTP/1.1 301 Moved Permanently');
header ('Location: http://' . $url['host'] . $url['path'] . (strpos($url['path'], '.mp3') !== false ? '' : '.mp3') . '?' . $url['query']);
?>

// tak teraz myślę, że gdybyś minimalnie inaczej sformułował pytanie to nawet bym się tego nie tyknął :)

0

adamo, mój Ty mistrzu.. ; D
dzięki ci bardzo [browar]

0

polecam również tą metodę nie trzeba robić buforowania wyjścia jeśli chcemy to zrobić w dowolnym miejscu w kodzie strony.

http://tomasz.skret.info/2010/09/29/wymuszenie-sciagania-pdfa/

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.