Anzeige:
Ergebnis 1 bis 8 von 8

Thema: pczib: Unable to open archive 'test.zip' in wb mode

  1. #1
    Registrierter Benutzer
    Registriert seit
    07.08.2005
    Beiträge
    45

    PCLZIP: Unable to open archive 'test.zip' in wb mode

    Jallo,
    ich versuche gerade mit pclzib eine zipdatei von einem Ordner zu erstellen und bekommen folgende meldung:
    Code:
    Error : PCLZIP_ERR_READ_OPEN_FAIL (-2) : Unable to open archive 'test.zip' in wb mode

    Die variablen werden alle richtig übergeben.
    Am ende soll das sosein das ein User auf eine Link klickt und dann den download des zip files angeboten bekommt.

    meine sourcen dazu sehen folgendermassen aus:

    PHP-Code:
    <?php
        
     
    echo  $titel "$_GET[titel].zip";
     echo 
    "<br>";
     echo 
    $folder "$_GET[folder]/shots/";
     echo 
    "<br>";    

      include_once(
    '../sites/pclzip.lib.php');
      
    $archive = new PclZip("$titel");
      
    $v_list $archive->create('$folder',
      
    PCLZIP_OPT_REMOVE_PATH'$folder');
      if (
    $v_list == 0) {
        die(
    "Error : ".$archive->errorInfo(true));
      }
    ?>
    Geändert von boba (09-08-2005 um 11:44 Uhr)

  2. #2
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Ändere mal diese Zeile
    PHP-Code:
    if (($this->zip_fd = @fopen($this->zipname'rb')) == 0
    nach
    PHP-Code:
    if (($this->zip_fd = @fopen($this->zipname'br')) == 0
    Welches System Windows Linux?
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  3. #3
    Registrierter Benutzer
    Registriert seit
    07.08.2005
    Beiträge
    45
    ich arbeite unter linux(ubuntu) mit apache2.
    nach der änderung kommt folgende meldung:

    Error : PCLZIP_ERR_MISSING_FILE (-4) : File 'images/s/test/shots/' does not exists


    Von wo führt den pclzip das packen aus, vielleicht liegts ja nur am pfad und pclzip will sonstwo die zip datei erstellen.
    Die Berechtigungen hab ich temporär für alle verzeichnisse auf a+rw gesetzt
    Ich habe auch schon probiert dem pfad mit einigen "../" zu ändern ohne erfolg.

    Code:
    test.zip
    images/p/test/shots/
    das erste ist der titel, 2te der pfad.
    und so wird das alles übergeben:
    Code:
    sites/packem.php?folder=$thumbs[$sub]&titel=$titel\
    Geändert von boba (09-08-2005 um 12:43 Uhr)

  4. #4
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    chmoooooooooooooooooooooooooooooooood
    chmod 0666 mein.zip
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  5. #5
    Registrierter Benutzer
    Registriert seit
    07.08.2005
    Beiträge
    45
    gerade hat er eine zip datei erstellt nachdem ich ein ../ an die richtige stelle gepackt habe, jetzt muss er nur noch die zip im richtigen ordner ablegen und die ordnerstruktur nicht mit ins zip einbinden.
    Geändert von boba (09-08-2005 um 12:52 Uhr)

  6. #6
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Ich dachte du willst entpacken ?
    PHP-Code:
    <?php

    function build_zip$d$z$f )
    {
        include(
    'pclzip.lib.php');
        
    $o getcwd();
        
    $d realpath$d );
        
    chdir$d );
        
    touch$z );
        
    $pcl = new PclZip$z );
        
    $v $pcl->create$f );
        if ( 
    $v == )
            die( 
    "Error : ".$pcl->errorInfotrue ) );

        
    chmod $z0644 );
        
    chdir$o );
        return 
    realpath$z );
    }

    echo 
    build_zip".""readme.txt.zip""" );

    ?>
    Geändert von undefined (09-08-2005 um 18:10 Uhr)
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

  7. #7
    Registrierter Benutzer
    Registriert seit
    07.08.2005
    Beiträge
    45
    ich habe das script in der ursprünglichen form wunderbar am laufen.

    ein winziges problem besteht leider darin das es keine ordner und dateien packt in dessen Namen ein ' vorkommt.
    Alle anderen phpscripte kommen damit zurecht, und in der BASH kann ich eine Datei mit hochkommata unter verwendung von "" erstellen.
    Das komische ist das der Name auch richtig ans script übergeben wird

    edit:
    Mithilfe von der funktion stripslashes wird die datei erstellt, nur der download funktioniert mit $file noch nicht, obwohl wenn ich den wert von $file im browser paste oder per <a href> anspreche geht es .
    dieses soll aber eh in eine eigene funktion ohne popup.

    Code:
    Error : PCLZIP_ERR_READ_OPEN_FAIL (-2) : Unable to open archive '../images/r/Rock\'n Roll/Rock\'n Roll.zip' in wb mode

    PHP-Code:
    <?php

          
    echo $titel2 "../$_GET[folder]/$_GET[titel].zip";
          echo 
    "<br>titel";
          echo 
    $titel =  stripslashes("$titel2");      
         echo 
    "<br>";
         
         echo 
    $titel1 "$_GET[titel]";
         echo 
    "<br>";
           echo 
    $folder2 "../$_GET[folder]/shots/";
           echo 
    "<br>";
           echo 
    $folder stripslashes("$folder2");
         echo 
    "<br>";
     
     
      include_once(
    '../sites/pclzip.lib.php');
      
      
    $archive = new PclZip("$titel");
      
    $v_list $archive->create("$folder",
                  
    PCLZIP_OPT_REMOVE_PATH"$folder"); 
      
      if (
    $v_list == 0) {
        die(
    "Error : ".$archive->errorInfo(true));
      }
      
        
    //echo "<a href=$titel>get</a>";
          
    echo "<a href=../index.php?site=sites/galerie.php&alpha=$_GET[alpha]>back</a><br>";
      
          echo 
    "getting $titel1";
          echo 
    "<META HTTP-EQUIV=Refresh CONTENT='20;URL=\"$titel\"'>";
         
    // echo "<META HTTP-EQUIV=Refresh CONTENT='10;URL=../index.php?site=sites/galerie.php&alpha='.$_GET[alpha].'>";
      
    ?>


    PS: reichlich doof das wenn man das subjekt des treads ändert, diese änderung nicht in der treadübersicht sichtbar ist
    Geändert von boba (09-08-2005 um 19:08 Uhr)

  8. #8
    Registrierter Benutzer Avatar von undefined
    Registriert seit
    01.03.2004
    Beiträge
    1.255
    Verwende am besten header( "content-type: " ); Siehe grep zip /etc/mime.types
    In einem neuen Fenster.
    mfg undefined
    --
    Undefined Behavior (undefiniertes Verhalten) bedeutet meistens etwas ungültiges.
    xhtml Debugger

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •