ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » 7z Datein über UserUpload !?

Geschlossen
  1. #1
    User Pic
    DragonLord2007 Mitglied
    Registriert seit
    27.04.2009
    Beiträge
    99
    Beitragswertungen
    0 Beitragspunkte
    Hallo liebe Community,

    ich würde es gern beim UserUpload ermöglichen das .7z (7-Zip) Datein hoch zu laden.

    Folgendes habe ich in der include/contents/downloads.php versucht:

    CODE Auszug:
    ------------------------------
    if (
    ($fende != 'rar' AND $fende != 'zip' AND $fende != 'tar' AND $fende != '7z')

    OR (
    $rtype != 'application/x-rar' AND
    $rtype != 'application/x-zip' AND
    $rtype != 'application/x-tar' AND
    $rtype != 'application/x-7z-compressed')

    ) {
    return ('Die Datei darf nur die Endungen: .zip, .7z, .tar oder .rar haben.');
    }
    --------------------------------------
    $rtype != 'application/x-7z') auch probiert aber nix
    --------------------------------------
    FETT= neue einträge
    leider ohne Erfolg.

    Kann mir wer dort weiterhelfen ?

    betroffene Homepage: externer Link


    Zuletzt modifiziert von DragonLord2007 am 12.10.2010 - 22:50:26
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    worldwideweb Mitglied
    Registriert seit
    30.09.2008
    Beiträge
    35
    Beitragswertungen
    1 Beitragspunkte
    Ich kan dir es nicht genau sagen aber denke mal rein vom logischen her wäre es $rtype != 'application/x-7z') . Aber wie gesagt, probieren geht über studieren.

    oh okey garnicht gelesen, hast du schon versucht...


    Zuletzt modifiziert von worldwideweb am 13.10.2010 - 05:20:05
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    whazza Mitglied
    Registriert seit
    18.10.2009
    Beiträge
    1.160
    Beitragswertungen
    35 Beitragspunkte
    Edit: Habe es mal entfernt weil so liesen sich alle Datei Endungen hoch laden


    Zuletzt modifiziert von whazza am 12.10.2010 - 21:56:46
    ez-skinz.com
    Unmögliches wird sofort erledigt, auf Wunsch wird auch gehext. Nur Wunder dauern etwas länger.
    0 Mitglieder finden den Beitrag gut.
  4. #4
    User Pic
    worldwideweb Mitglied
    Registriert seit
    30.09.2008
    Beiträge
    35
    Beitragswertungen
    1 Beitragspunkte
    ZitatZitat geschrieben von whazza

    Edit: Habe es mal entfernt weil so liesen sich alle Datei Endungen hoch laden


    Zuletzt modifiziert von whazza am 12.10.2010 - 21:56:46


    ? muss man verstehn?

    btt: also laut wiki artikel ist application/x-7z-compressed das was du suchst....komisch warum es nicht funk.


    Zuletzt modifiziert von worldwideweb am 13.10.2010 - 05:21:55
    0 Mitglieder finden den Beitrag gut.
  5. #5
    User Pic
    whazza Mitglied
    Registriert seit
    18.10.2009
    Beiträge
    1.160
    Beitragswertungen
    35 Beitragspunkte
    Ich hatte dieses eingefügt Poste es einfach nochmal

    ($fende != 'rar' AND $fende != 'zip' AND $fende != 'tar' AND $fende != '7z')
                       
              OR (
              $rtype != 'application/x-rar' AND
              $rtype != 'application/x-zip' AND
              $rtype != 'application/x-tar')
    
                ) 
    {
              $returnupload = 'Die Datei darf nur die Endungen: .7z, .zip, .tar oder .rar haben.';
              }


    Aber wenn man es so einfügt, lassen sich alle Datei Endungen Hochladen .exe .php usw...


    Und könnte es sein das man dieses noch mit einstellen muss
    /include/includes/func/ic_mime_type.php


    Zuletzt modifiziert von whazza am 13.10.2010 - 13:34:45
    ez-skinz.com
    Unmögliches wird sofort erledigt, auf Wunsch wird auch gehext. Nur Wunder dauern etwas länger.
    0 Mitglieder finden den Beitrag gut.
  6. #6
    User Pic
    DragonLord2007 Mitglied
    Registriert seit
    27.04.2009
    Beiträge
    99
    Beitragswertungen
    0 Beitragspunkte
    hmmm das aber nen bissel sehr undurchschaubar für mich zumindest lächeln

    -------------------------
    ganze datei /include/includes/func/ic_mime_type.php
    -------------------------
    <?php
    
    /*
    
    Magic mime file interpreter
    Copyright (c) 2004 by Phillip Berndt
    Version 1.0
    
    */
    
    function ic_mime_type ($file) {
      if (!file_exists($file)) {
        return ('application/x-object');
      }
      if(!isset($mimeData)) {
       $mimeFile = array (
          '0        string            PK\003\004        application/x-zip',
          '0    string        Rar!        application/x-rar',
          '257     string          ustar\0         application/x-tar       posix',
          '257     string          ustar\040\040\0         application/x-tar       gnu',
          '0    string        GIF        image/gif',
          '0    beshort        0xffd8        image/jpeg',
          '0    string        \137PNG            image/png',
          '>30        string    Copyright\ 1989-1990\ PKWARE\ Inc.    application/x-zip',
          '>30        string    PKLITE\ Copr.    application/x-zip',
        );
        foreach($mimeFile as $mimeLine) {
          if($mimeLine[0] != '#' && trim($mimeLine)) {
            if(preg_match('/^(\S+?)\s+(\S+?)\s+(\S+)(\s+(.+?))?$/si', $mimeLine, $regex_mimeDataSet)) {
              $mimeDataSet['offset'] = str_replace('>', '', $regex_mimeDataSet[1]);
              $indicator = $regex_mimeDataSet[3];
              switch($regex_mimeDataSet[2]) {
                case 'string':
                  $indicator = str_replace('\ ', ' ', $indicator);
                  $indicator = str_replace('\<', '<', $indicator);
                  $indicator = str_replace('\>', '>', $indicator);
                  $indicator = str_replace('\r', "\r", $indicator);
                  $indicator = str_replace('\n', "\n", $indicator);
                  $indicator = preg_replace('/\\\\([0-9]{3})/e', 'chr($1);', $indicator);
                  break;
                case 'byte':
                  $indicator = pack('c', @eval('return '.$indicator.';'));
                  break;
                case 'short':
                  $indicator = pack('s', @eval('return '.$indicator.';'));
                  break;
                case 'beshort':
                  $indicator = pack('n', @eval('return '.$indicator.';'));
                  break;
                case 'leshort':
                  $indicator = pack('v', @eval('return '.$indicator.';'));
                  break;
                case 'belong':
                  $indicator = pack('N', @eval('return '.$indicator.';'));
                  break;
                case 'lelong':
                  $indicator = pack('V', @eval('return '.$indicator.';'));
                  break;
                case 'long':
                  $indicator = pack('l', @eval('return '.$indicator.';'));
                  break;
              }
    
              $mimeDataSet['indicator'] = $indicator;
              $mimeDataSet['mime'] = str_replace("\r", '', $regex_mimeDataSet[5]);
    
              $mimeData[] = $mimeDataSet;
            }
          }
        }
      }
      $o = fopen ($file, "r");
      $file_content = fgets($o, 4096);
      fclose($o);
      
      $retVal = 'application/x-object';
      foreach($mimeData as $key => $mimeTest) {
        $testStr = substr($file_content, $mimeTest['offset'], strlen($mimeTest['indicator']));
        if($testStr == $mimeTest['indicator']) {
          $mimeType = $mimeTest['mime'];
          if($mimeType == '') {
            while($mimeType == '') {
              $mimeType = $mimeData[++$key]['mime'];
            }
          }
          $retVal = $mimeType;
        }
      }
      return $retVal;
    }
    ?>

    -----------------------------------------

    da bin ich jetzt aber überfragt.


    Zuletzt modifiziert von Chapter am 14.10.2010 - 19:15:03
    0 Mitglieder finden den Beitrag gut.
  7. #7
    User Pic
    whazza Mitglied
    Registriert seit
    18.10.2009
    Beiträge
    1.160
    Beitragswertungen
    35 Beitragspunkte
    Habe den Fehler gefunden Falls du ihn noch nicht behoben hast also einmal
    in der

    /include/contents/downloads.php

    dieses

    $fende = preg_replace("/.+\.([a-zA-Z]+)$/", "\\1", $fname);


    zu

    $fende = preg_replace("/.+\.([a-zA-Z0-9]+)$/", "\\1", $fname);



    Und dann noch so

                  ($fende != 'rar' AND $fende != 'zip' AND $fende != 'tar' AND $fende != '7z')
                       
              OR (
              $rtype != 'application/x-object' AND 
              $rtype != 'application/x-rar' AND
              $rtype != 'application/x-zip' AND
              $rtype != 'application/x-tar')
    
                ) {
              return ('Die Datei darf nur die Endungen: .7z .zip, .tar oder .rar haben.');
            }



    Zuletzt modifiziert von whazza am 14.10.2010 - 19:00:04
    ez-skinz.com
    Unmögliches wird sofort erledigt, auf Wunsch wird auch gehext. Nur Wunder dauern etwas länger.
    0 Mitglieder finden den Beitrag gut.
  8. #8
    User Pic
    DragonLord2007 Mitglied
    Registriert seit
    27.04.2009
    Beiträge
    99
    Beitragswertungen
    0 Beitragspunkte
    Sehr Geil !!


    Vielen Dank !!
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten