ch lasse mysql durch select into file eine Tabelle dumpen in ein verzeichnis, in das der Webserver schreiben darf.
Die Datei soll gezipt und abgeliefert werden.
Das Problem ist, das an dieser Stelle 'file_exists' immer false liefert, und auch wenn ich diese Bedingung weglasse, kann das Script die Zipdatei nicht ausliefern.
wenn ich danach den url, an dem die zipdatei liegt händisch in den location bar eintippe, wird die Datei normal geliefert.
Hat jemand sowas schon erlebt?
Die Datei soll gezipt und abgeliefert werden.
Das Problem ist, das an dieser Stelle 'file_exists' immer false liefert, und auch wenn ich diese Bedingung weglasse, kann das Script die Zipdatei nicht ausliefern.
wenn ich danach den url, an dem die zipdatei liegt händisch in den location bar eintippe, wird die Datei normal geliefert.
Hat jemand sowas schon erlebt?
PHP-Code:
$cmd = 'zip -jq9 ' . $zipname . $tmpdir . '/*.csv';
ob_start();
system($cmd,$erg);
ob_end_clean();
if (($erg == 0) && (file_exists($zipname))) {
header('Content-Disposition: attachment; filename=formlog_' . date('Ymdhis') . '.zip ');
header('Content-Type: application/zip');
header('Accept-Ranges: bytes');
header('Content-Length: ' . filesize($zipname));
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
readfile($zipname);
unlink($zipname);
}
Kommentar