[Coder gesucht] upload- script

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

  • [Coder gesucht] upload- script

    Hallöchen ich suche jemanden der mir helfen könnte bei folgendem Problem....

    ich wollte ein script, dass nur *.zip hochladen lässt, zip entpackt und den inhalt in einen vorhandenen ordner verschiebt....
    gesagt ist es halt einfach....
    das script ist gerade soweit, dass es zip hochladen tut (alles andere auch),
    leider entpackt er nicht sondern wirft eine fehlermeldung aus...
    Fatal error: Cannot instantiate non-existent class: ziparchive in status2.php on line 6

    ich scripte mal hier was ich bis jetzt habe:

    meine upform.php
    PHP-Code:
    <p>Dateiupload (nur *.zip Dateien)</p>
    <p>jede *.zip Datei höchstens 5 MB groß.</p>
    <form method="post" action="upload-zip.php<? echo '?dir='.$_GET['dir'].'&datei='.$_FILES["datei"]; ?>" enctype="multipart/form-data">
      Datei:
      <input type="file" name="datei" size="40">
      <input type="submit" name="Submit" value="Senden">

    </form>
    </body>
    </html>
    meine upload-zip.php
    PHP-Code:
    <?
    $dir3 = $_GET['dir'];
    $file = $_GET['datei'];
    $dir2 = "../upload/";

    // Prüfen des Array $_FILES
    if (isset($_FILES["datei"])) {

    // Upload-Status
    if ($_FILES["datei"]["error"] == UPLOAD_ERR_OK) {

    // Muster zur Überprüfung der im Dateinamen
    // enthaltenen Zeichen (Optional)
    $regExp = "/^[a-z_]([a-z0-9_-]*\.?[a-z0-9_-])*\.[a-z]{3,4}$/i";

    // Dateiname und Dateigrösse
    if (preg_match($regExp,$_FILES["datei"]["name"]) && $_FILES["datei"]["size"] > 0 && $_FILES["datei"]["size"] < 25000000) {

    // Temporäre Datei in das Zielverzeichnis
    // des Servers verschieben.
    move_uploaded_file($_FILES["datei"]["tmp_name"],$dir2.$dir3."/".$_FILES["datei"]["name"]);

    // Redirect zur Erfolgs-Meldung
    $h111 = $_FILES['datei']['name'];
    ?>
    <form method="post" action="status2.php<? echo '?dir='.$_GET['dir'].'&datei='.$_FILES['datei']['name']; ?>">
    <?
    echo "Datei hochgeladen<br>";
    echo "jetzt musst du noch die Datei entpacken und das machst du <a href='status2.php?dir=$dir3&datei=$h111'>hier</a>";

    }
    else {
    echo "Fehler: Im Dateinamen oder Dateigrössen Limit!";
    }
    }
    else {
    echo "Fehler: Während der Übertragung aufgetreten!";
    }
    }
    else {
    echo "Fehler: Dateiupload fehlgeschlagen!";
    }
    ?>
    und die status2.php datei wo die *.zip entpacken soll....

    PHP-Code:
    <?php
    $dir 
    $_GET['dir'];
    $file $_GET['datei'];
    $dir2 '../upload/';

    $zip = new ZipArchive;
    if (
    $zip->open($dir2.$dir."/".$file) === TRUE) {
        
    $zip->extractTo($dir2.$dir);
        
    $zip->close();
        echo 
    '<br>Datei wurde hochgeladen, extrahiert und sind jetzt zu sehen';
        
    unlink ($dir2.$dir."/".$file);
    } else {
        echo 
    '<br>Datei wurde nicht hochgeladen, weil es war keine *.zip datei';
    }
    ?>
    Weltbestepartybilder.de Community, Partybilder, uvm...

  • #2
    interessanter wäre dein os und php-version gewesen.

    http://php.net/manual/en/zip.installation.php

    Kommentar


    • #3
      Was Os ist weiß ich nicht
      aber mein webspace hoster hat PHP5


      EDIT:
      Problem erkannt^^
      Mein Webspacehoster verbietet *.zip entpacken
      Zuletzt geändert von babyos; 23.08.2008, 19:02.
      Weltbestepartybilder.de Community, Partybilder, uvm...

      Kommentar

      Lädt...
      X