file_exists spinnt ?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • file_exists spinnt ?

    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?
    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);
       } 

  • #2
    wird die datei in der zeitspanne zwischen dem aufruf von system() und file_exists() angelegt? vielleicht braucht sie etwas länger

    versuch mal direkt nach dem aufruf von system() mit glob(), ´ls´ o.ä. den inhalt des ordners anzuzeigen. vielleicht ist die datei wirklich _noch_ nicht da, wenn du sie bereits mit file_exists() suchst.

    Kommentar


    • #3
      http://www.php.net/manual/de/function.file-exists.php:
      Anmerkung: Die Ergebnisse dieser Funktion werden gecached. Weitere Details erhalten Sie bei clearstatcache().
      I don't believe in rebirth. Actually, I never did in my whole lives.

      Kommentar


      • #4
        War es leider beides nicht.
        Lösung 1 klingt zwar unlogisch, habe ich aber mittels einer warteschleife überüft, funzt net. System ist ja auch kein fork aufruf.
        Lösung 2 klang geil und verheissungsvoll, hat aber leider auch keinerlei Effekt.
        Weiss auch nicht mehr weiter, manchmal wünschte ich, ich hätte etwas anständiges gelernt, wie Gärtner oder Bauhelfer oder so ...

        Kommentar

        Lädt...
        X