Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wymuszenie pobrania pliku
Forum PHP.pl > Forum > PHP
borovsky
witam, mam problem... korzystam z header + readfile
ładnie daje się pobierać na dysk np. mp3 (niektórzy mają quicktime plugin, więc dlatego się tym zająłem)
ale mam mp3 22MB, a plik wynikowy PHP ma 1KB
nie wiem, gdzie to się ustawia, może .htaccess? proszę o podpowiedź biggrin.gif

pozdrawiam, borovsky

jakby ktoś szukał:

<?php
function readfile_chunked($filename,$retbytes=true)

{

$chunksize = 1*(1024*1024); // how many bytes per chunk

$buffer = '';

$cnt =0;

// $handle = fopen($filename, 'rb');

$handle = fopen($filename, 'rb');

if ($handle === false)

{

return false;

}

while (!feof($handle))

{

$buffer = fread($handle, $chunksize);

echo $buffer;

if ($retbytes)

{

$cnt += strlen($buffer);

}

}

$status = fclose($handle);

if ($retbytes && $status)

{

return $cnt; // return num. bytes delivered like readfile() does.

}

return $status;

}
$src=$_GET["url"];
$ind=strrpos($src,".");
$roz=substr($src,$ind+1,strlen($src));
header('Content-type: application/'.$roz);
header('Content-Disposition: attachment; filename='.basename($src));
header("Content-Length: " .(string)(filesize($src)) );
readfile_chunked($src);

?>
nowotny
Cytat(borovsky @ 6.03.2008, 15:51:12 ) *
proszę o podpowiedź biggrin.gif

A ja proszę o konkretnie pytanie bo z tej papki co nam zaserwowałeś to ni w ząb nic zrozumieć nie można...
netmare
fajnie, fajnie
może jednak lepiej jak poniżej?

  1. <?php
  2. ....
  3. header('Content-Disposition: attachment; filename='.basename($src));
  4. echo(file_get_contents($nazwapliku));
  5. ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.