Zip zap

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Zip zap

    Tach mal wieder,

    gibt es standradmässig eine möglichkeit Dateien mit PHP zu zippen?
    Welche Extras braucht man oder sind diese meist schon in der Standarversionen von PHP vorhanden.
    Ich habe ein Paket bei 1&1 Puretec.

    Wenn ich z.B. einen Dump einer Tabelle mache, diesen dann ich einen Datei schreibe und in einem Verzeichnis zum Download ablege, möchte ich diese gerne gezipt haben, damit der Link nicht als Textfile im Browser aufgeht, sondern auch wirklich downgeloadet wird.
    Wie geht dem?

    Es grüßt der Andi
    Last edited by andik2000; 12-04-2002, 11:22.

  • #2
    PHP muss mit --with-ziplib kompiliert sein, dafür benötigt man zzlib; PureTec dürfte das allerdings nicht haben....

    Bzgl. des Downloads kannst du dir abhelfen mit:

    PHP Code:
    $dateiname 'Dateiname, unter dem gespeichert werden soll';
    header("Content-type: application/octet-stream\nContent-Disposition: attachment; filename = \"$dateiname\"\n"); 

    CAT Music Files

    Comment


    • #3
      Wo packe ich den Header denn rein?
      Linke ich dann quasi auf die PHP-Datei und die gibt mir den Content der txt-Datei zurück als Download?

      Noch ne Frage: Gibt es einen einfachen Befehl für einen Tabeeln Dump?
      Bin zu faul zum nachschlagen, ausserdem sitze ich noch bei der Arbeit ;-)

      Gruß&Dank, Andi

      Comment


      • #4
        beispiel...

        <a href="download.php?dateiname=datei.blub"
        PHP Code:
        $dateiname = $_GET['dateiname'];
        if (
        $f fopen($dateiname)) {
          
        $inhalt fread($dateiname,10485760);
          
        fclose($f);
          
        header("Content-type: application/octet-stream\nContent-Disposition:     attachment; filename = \"$dateiname\"\n");
          echo 
        $inhalt;
        } else {
          echo 
        'Downloadfehler.';


        CAT Music Files

        Comment


        • #5
          Geht nicht! :-(
          Bringt mir ne Fehlermeldung in line 1

          Habe das ganze direkt über die URL aufgerufen.
          -------------
          $dateiname = "text.txt";

          if ($f = fopen($dateiname)) {
            $inhalt = fread($dateiname,10485760); // habe hier auch ...($f,10485760); probiert
            fclose($f);

            header("Content-type: application/octet-stream\nContent-Disposition:     attachment; filename = \"$dateiname\"\n");

            echo $inhalt;
          } else {
            echo 'Downloadfehler.';
          }
          -------------

          Any ideas?

          Comment


          • #6
            Ach, grobe Schlamperei meinerseits.. Es muss natürlich so heißen:
            PHP Code:
            if ($f = fopen($dateiname,'rb')) {
              $inhalt = fread($f,10485760); 

            CAT Music Files

            Comment


            • #7
              Schade, nächster Versuch!

              Ich habe mal das ganze IF-Zeug rausgeschmissen.
              Zeigt mir jetzt eine Fehler in Line 3.
              Müsste diese sein:
              $inhalt = fread($f,10485760);

              Wenn ich zu Hause bin, schaue ich auch noch mal in mein schlaues Buch
              wie das mit dem Datei-Lesen funktioniert.

              ------------------------------------------
              $dateiname = "text.txt";
              $f = fopen($dateiname,'rb');
                $inhalt = fread($f,10485760);
                fclose($f);
                header("Content-type: application/octet-stream\nContent-Disposition:     attachment; filename = \"$dateiname\"\n");
                echo $inhalt;
              ------------------------------------------

              Gruß, Andi

              Comment

              Working...
              X