Peter Bucher
Angesehenes Mitglied
Hallo,
habe mir einige Sachen betreff dieses Thema durchgelesen aber leider machts jeder ein bisschen anders, dass kenn ich so nicht weil ich von A*P her komme.
Könnte mir jemand sagen was an diesem Code falsch sein könnte?
Es geht um die startdownload Prozedur, die Dateien sind nach dem herunterladen ungültig,
am liebsten währe mir wenn mir jemand sagen könnte welche methode den heutzutage gängig ist, kann mich für keine Entscheiden, habs jetzt mal mit flush() gemacht, leider sind die Dateien im Nachhinein ungültig... sonst geht alles flott und korrekt, auch keine Fehlermeldungen.
CODE
<?PHP
// -----------------------------------------------------------------
// --- Prozedur startDownload
// -----------------------------------------------------------------
// --- Stream-Download starten
// -----------------------------------------------------------------
// --- Parametername Datentyp Verwendung
// -----------------------------------------------------------------
// --- FileName String Name der Datei
// --- filePath String Pfad zur Datei
// -----------------------------------------------------------------
function startdownload($file_name, $file_location)
{
$path = $file_location.$file_name;
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=".$file_name);
header("Content-transfer-encoding: binary");
header("Content-length: ".filesize($path));
@readfile($path);
flush();
}
?>
habe mir einige Sachen betreff dieses Thema durchgelesen aber leider machts jeder ein bisschen anders, dass kenn ich so nicht weil ich von A*P her komme.
Könnte mir jemand sagen was an diesem Code falsch sein könnte?
Es geht um die startdownload Prozedur, die Dateien sind nach dem herunterladen ungültig,
am liebsten währe mir wenn mir jemand sagen könnte welche methode den heutzutage gängig ist, kann mich für keine Entscheiden, habs jetzt mal mit flush() gemacht, leider sind die Dateien im Nachhinein ungültig... sonst geht alles flott und korrekt, auch keine Fehlermeldungen.
CODE
<?PHP
// -----------------------------------------------------------------
// --- Prozedur startDownload
// -----------------------------------------------------------------
// --- Stream-Download starten
// -----------------------------------------------------------------
// --- Parametername Datentyp Verwendung
// -----------------------------------------------------------------
// --- FileName String Name der Datei
// --- filePath String Pfad zur Datei
// -----------------------------------------------------------------
function startdownload($file_name, $file_location)
{
$path = $file_location.$file_name;
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=".$file_name);
header("Content-transfer-encoding: binary");
header("Content-length: ".filesize($path));
@readfile($path);
flush();
}
?>