Ergebnis 1 bis 7 von 7

Thema: Zip Funktion

  1. #1
    Magiermädchen
    Gast

    Standard Zip Funktion

    hallo Leute.

    ich hab mich an einer Zip Funktion probiert, leider bekomme ich immer einen fehler, und ich weiß net woran es liegt



    hier poste ich mal den code:

    $file = $_POST['image']; // <--von einem Upload-Formular
    $ziel = '/zip';
    $zeiger = zip_open($file);

    while($zip_entry = zip_read($zeiger)) {
    if (zip_entry_open($zeiger, $zip_entry, 'r')) {
    $buffer = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
    $fp = fopen("zip/".zip_entry_name($zip_entry),'w+');
    fwrite($fp, $buffer);
    zip_entry_close($zip_entry);
    }
    }

    zip_close($zeiger);

    das habe ich in eine upload-datei reingeladen, auf dieser ich sachen auf meinen webspace hochladen kann (<die image datei).
    find einfach keinen fehler! danke
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Forum Guru
    Registriert seit
    13.01.2005
    Ort
    Schweiz
    Beiträge
    5.240
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Code:
    function unZip &#40;$quelle, $ziel&#41; &#123;
        $zip_zeiger = zip_open&#40;$quelle&#41;;
        while&#40;$zip_entry = zip_read&#40;$zip_zeiger&#41;&#41; &#123;
            $i++;
            if &#40;zip_entry_open&#40;$zip_zeiger, $zip_entry, 'r'&#41;&#41; &#123;
                $buffer = zip_entry_read&#40;$zip_entry, zip_entry_filesize&#40;$zip_entry&#41;&#41;;
                # Dateityp überprüfen, nur .jpg erlaubt
                if &#40;substr&#40;zip_entry_name&#40;$zip_entry&#41;, -4&#41; != '.jpg'&#41; &#123;
                    # Fehler - die Datei ist nicht .jpg
                    return false;
                &#125;
                $fp = fopen&#40;$ziel.zip_entry_name&#40;$zip_entry&#41;,'w+'&#41;;
                fwrite&#40;$fp, $buffer&#41;;
                zip_entry_close&#40;$zip_entry&#41;;
            &#125;
            else &#123;
                # Fehler - Datei kann nicht gelesen werden
                return false;
            &#125;
        &#125;
        zip_close&#40;$zip_zeiger&#41;;
    &#125;
    ist eins von mir, musst es evtl. noch anpassen aber es funktioniert.

  3. #3
    Magiermädchen
    Gast

    Standard

    ah ja das hab ich gefunden!, dann bedanke ich mich dann mal bei dir, bist echt schlau^^

    hm also i hab das jetzt ma so probiert:

    $quelle = $_POST['image'];
    $ziel = '../stuff/layouts/div';

    function unZip ($quelle, $ziel)
    {
    $zip_zeiger = zip_open($quelle);
    while($zip_entry = zip_read($zip_zeiger))

    {
    $i++;
    if (zip_entry_open($zip_zeiger, $zip_entry, 'r'))
    {
    $buffer = zip_entry_read($zip_entry, zip_entry_filesize($zip_entry));
    $fp = fopen($ziel.zip_entry_name($zip_entry),'w+');
    fwrite($fp, $buffer);
    zip_entry_close($zip_entry);
    echo "es geht";
    }

    }
    zip_close($zip_zeiger);
    }

    geht aber leider net xD'

  4. #4
    Forum Guru
    Registriert seit
    13.01.2005
    Ort
    Schweiz
    Beiträge
    5.240
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    1. bitte code tags benützen beim posten
    2. was hat $_POST['image'] für nen wert?
    3. $ziel = '../stuff/layouts/div'; (hattest ein . zuviel)
    4. eine function muss aufgerufen werden:

    Code:
    $quelle = $_POST&#91;'image'&#93;;
    $ziel = '../stuff/layouts/div';
    
    // Funktion aufrufen
    unZip&#40;$quelle, $ziel&#41;;
    
    function unZip &#40;$quelle, $ziel&#41;
    &#123;
    $zip_zeiger = zip_open&#40;$quelle&#41;;
    while&#40;$zip_entry = zip_read&#40;$zip_zeiger&#41;&#41;
    
    &#123;
    $i++;
    if &#40;zip_entry_open&#40;$zip_zeiger, $zip_entry, 'r'&#41;&#41;
    &#123;
    $buffer = zip_entry_read&#40;$zip_entry, zip_entry_filesize&#40;$zip_entry&#41;&#41;;
    $fp = fopen&#40;$ziel.zip_entry_name&#40;$zip_entry&#41;,'w+'&#41;;
    fwrite&#40;$fp, $buffer&#41;;
    zip_entry_close&#40;$zip_entry&#41;;
    echo "es geht";
    &#125;
    
    &#125;
    zip_close&#40;$zip_zeiger&#41;;
    &#125;
    so long

  5. #5
    Magiermädchen
    Gast

    Standard

    2. was hat $_POST['image'] für nen wert?
    das ist von meinem upload formular und das ist die zip datei

  6. #6
    Forum Guru
    Registriert seit
    13.01.2005
    Ort
    Schweiz
    Beiträge
    5.240
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    POST ist für string werte, für dateien musst du $_FILES nehmen.

    also $quelle = $_FILES['image'];

    so ich bin weg. viel erfolg
    so long

  7. #7
    Gast

    Standard

    ich danke dir sehr =) lg

Ähnliche Themen

  1. get funktion will nicht? [PHP]
    Von Telmata im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 29.08.2007, 20:46
  2. Upload Funktion
    Von jd73 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 12
    Letzter Beitrag: 03.07.2007, 20:42
  3. Suche eine Funktion wie bei VBA die Controls Funktion
    Von OJMD im Forum Forum für alle anderen Programmiersprachen
    Antworten: 2
    Letzter Beitrag: 28.06.2007, 08:08
  4. Wert aus JS-Funktion an PHP-Funktion übergeben
    Von Agnes im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 17
    Letzter Beitrag: 18.05.2007, 21:53
  5. vermißte Funktion
    Von Carolyn im Forum Forum-Hilfe.de intern
    Antworten: 7
    Letzter Beitrag: 27.03.2004, 21:43

Stichworte

Berechtigungen

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