Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Dateiendung bei File-Upload überprüfen

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #15 am: 22. Juni 2016, 22:10:48
    du suchst die product_info.php

    Sollte zu finden sein in

    [deineWebseite]/includes/modules/

    Janglx

    • Neu im Forum
    • Beiträge: 39
    • Geschlecht:
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #16 am: 22. Juni 2016, 22:25:24
    Hab's mir mal einfach gemacht und die Dateisuche von Filezilla benutzt. Hat dementsprechend auch schnell geklappt. Habe die Datei in dem angegebenen Pfad gefunden.

    Und jetzt? Das einzige was ich zum Fileupload finde ist folgendes:

    Code: PHP  [Auswählen]
                    //EOF FILE UPLOAD
                    $info_smarty->assign('FORM_END', '</form>');
                    $info_smarty->assign('PRODUCTS_PRICE', $products_price['formated']);
                    if ($product->data['products_vpe_status'] == 1 && $product->data['products_vpe_value'] != 0.0 && $products_price['plain'] > 0)
                            $info_smarty->assign('PRODUCTS_VPE', $xtPrice->xtcFormat($products_price['plain'] * (1 / $product->data['products_vpe_value']), true).TXT_PER.xtc_get_vpe_name($product->data['products_vpe']));
                    $info_smarty->assign('PRODUCTS_ID', $product->data['products_id']);
                    $info_smarty->assign('PRODUCTS_NAME', $product->data['products_name']);

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #17 am: 22. Juni 2016, 22:35:15
    In der Datei werden anscheinend die Daten verarbeitet und evtl direkt die Fehlermeldung ausgespuckt also solltest du dort mal schauen, ob eine Liste mit erlaubten Dateiendungen iwo steht..wenn du glück hast ;-)

    Ansonsten könnte evtl auch auf der ursprungsseite eine Prüfung erfolgen

    //EOF FILE UPLOAD
    Bedeutet EndofFile

    Das dadrüber wäre interessant

    Janglx

    • Neu im Forum
    • Beiträge: 39
    • Geschlecht:
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #18 am: 22. Juni 2016, 22:38:00
    Das wäre folgendes:

    Code: PHP  [Auswählen]
    //BOF FILE UPLOAD - added enctype="multipart/form-data"
                    $info_smarty->assign('FORM_ACTION', xtc_draw_form('cart_quantity', xtc_href_link(FILENAME_PRODUCT_INFO, xtc_get_all_get_params(array ('action')).'action=add_product'),'post','enctype="multipart/form-data"'. $formtest));

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #19 am: 22. Juni 2016, 22:49:56
    Die PHP Variable
    Code: PHP  [Auswählen]
    $formtest
    sieht ganz interessant aus.

    Ich habe z.B. ein Backup meines Shops auf meinem PC und in solchen fällen würde ich z.B. über den Total Commander mit der Textsuche im xtc Verzeichnis nach dieser Variable suchen

    Janglx

    • Neu im Forum
    • Beiträge: 39
    • Geschlecht:
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #20 am: 23. Juni 2016, 08:47:39
    Werde ich mal testen, den Shop zu downloaden und dann über den Total Commander nach der Variable zu suchen.
    Aber werden mir nicht wahrscheinlich total viele Dateien gezeigt, da die Variable ja durchaus öfters vorkommen kann?

    Edit: Laut Titel Command gibt es nur diese eine Datei, product_info, in der diese Variable vorkommt.

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #21 am: 23. Juni 2016, 09:10:39
    Dann lad die Datei mal in Notepadd++ und such nach den Stellen. Wenn es nicht zu viele sind poste mal den Code

    Janglx

    • Neu im Forum
    • Beiträge: 39
    • Geschlecht:
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #22 am: 23. Juni 2016, 09:17:37
    $formtest scheint damit eher weniger zu tun zu haben.

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #23 am: 23. Juni 2016, 09:21:59
    Wenn deine Programmierer doch alles schön kommentiert haben könntest du ja auch mit dem TotalCommander nach sowas wie "Dateiprüfung" schauen. Oder du suchst nach der Endung der Datei, die du hochladen wolltest, die blockiert wurde

    Janglx

    • Neu im Forum
    • Beiträge: 39
    • Geschlecht:
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #24 am: 23. Juni 2016, 09:40:30
    Tatsache! Habe endlich eine Datei gefunden: upload.php

    Code: PHP  [Auswählen]
    <?php

    // FILEUPLOAD (c) by web28 - www.rpa-com.de
    //------------------------------------------------------------------------------------------
    //UPLOAD EINSTELLUNGEN

    define('MAX_UPLOAD_SIZE', 3072); //Maximale Dateigröße 1 MB = 1024 KB
    define('UPLOAD_FILENAME_EXTENSIONS','jpg,jpeg,gif,png,pdf,tif,tiff,zip'); //Zugelassene Dateitypen - Komma getrennt

    //UPLOAD ORDNER CODE - bitte eine 10-stellige Ziffernfolge eingeben -
    //WICHTIG: die beiden Ordner im Shophauptverzeichnis dann so umbenennen: upload_tmp_ZIFFERNFOLGE und upload_ZIFFERNFOLGE
    define('UPLOADCODE', '3145790151');
    //------------------------------------------------------------------------------------------


            if (!empty($_FILES['upload_'.$value]['name']) && $error_msg == ''){
                    $mime_type_array = explode(',',UPLOAD_FILENAME_EXTENSIONS);
                    $option_name = xtc_oe_get_options_name($option,'');
                    //TESTEN AUF GÜLTIGKEIT - DATEITYP
                    $imageinfo = GetImageSize($_FILES['upload_'.$value]['tmp_name']);                                                              
                    //1 = GIF, 2 = JPG, 3 = PNG, 4 = SWF, 5 = PDF, 6 = CDR, 7 = EPS, 8 = INX, 9 = QXD, 10 = JOBOPTIONS, 11 = ZIP      
                    $getimagetype= array('','GIF', 'JPG','PNG','SWF','PDF','CDR','EPS','INX','QXD','JOBOPTIONS','ZIP');
                    $dateityp = strtolower($getimagetype[$imageinfo[2]]);
                    if ($dateityp == '') { //wenn kein Bild dann die Erweiterung feststellen
                            $str = explode(",",$_FILES['upload_'.$value]['name']);                    
                            $dateityp = strtolower(end($str));
                    }
                    $err = false;
                    if (!in_array($dateityp, $mime_type_array)) { //Feststellen  ob dateityp zugelassen
                            //Dateityp ungültig
                            $error_msg .= $option_name . sprintf (FILE_TYP_ERROR_MSG,$dateityp);
                            $err = true;   
                    }
                    //TESTEN AUF GÜLTIGKEIT -  GRÖSSE
                    if ($_FILES['upload_'.$value]['size'] > (MAX_UPLOAD_SIZE*1000)) {
                            //Datei zu groß
                            $error_msg .= $option_name . sprintf (FILE_MAX_ERROR_MSG,MAX_UPLOAD_SIZE);
                            $err = true;
                    }                                                              
                    //DATEINAMEN PRÜFEN /Umlaute entfernen
                    if (!$err) {
                            $textfeld[$value] = htmlentities($_FILES['upload_'.$value]['name']);
                            //GESPEICHERTER DATEINAME
                            $d_name = 'upload_tmp_' . UPLOADCODE . '/' . strftime('%Y%m%d_%H%M%S') . '_' . $textfeld[$value];
                            if ( @ copy ( $_FILES['upload_'.$value]['tmp_name'], $d_name) ){
                                    if ( is_uploaded_file ( $_FILES['upload_'.$value]['tmp_name'] ) ){
                                            //upload OK
                                            $_SESSION['upload'][$value] = $d_name; //für customer_basket_attributes
                                            $fileupload[$value] = $d_name;
                                            $fileupload_ok .= $textfeld[$value] . FILE_UPLOAD_OK;
                                    }
                            }
                    }
            //KEIN DATEI AUSGEWÄHLT                                       
            } else {                                                       
                    if (isset($_POST['req_'.$value])) { $error_msg .= xtc_oe_get_options_name($option,'') . TEXT_ERROR_MSG_FIELD; }                                                        
            }

    ?>

    Kann ich dort jetzt einfach weitere Dateiendungen einfügen und es funktioniert direkt?

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #25 am: 23. Juni 2016, 09:45:00
    Nach der Änderung und dem Upload der Datei sollte nach einem page Reload alles funktionieren

    Janglx

    • Neu im Forum
    • Beiträge: 39
    • Geschlecht:
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #26 am: 23. Juni 2016, 10:15:28
    Ich sag's nur ungerne, aber irgendetwas scheint immer noch nicht wirklich zu stimmen.

    Habe gerade nochmal probiert eine Datei mit der Endung .inx hochzuladen, was laut der PHP-Datei gehen sollte. Aber ich habe die Fehlermeldung bekommen. Hängt das mit Groß- und Kleinschreibung zusammen?

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #27 am: 23. Juni 2016, 10:22:56
    Hast du den Eintrag so erweitert?

    Code: PHP  [Auswählen]
    define('UPLOAD_FILENAME_EXTENSIONS','jpg,jpeg,gif,png,pdf,tif,tiff,zip,inx');

    und hast du danach die upload.php über filezilla wieder auf deinen Webspace geladen?

    Janglx

    • Neu im Forum
    • Beiträge: 39
    • Geschlecht:
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #28 am: 23. Juni 2016, 10:28:24
    Ach, wie kann das denn sein dass die eine Dateiendung da fehlt?

    .inx habe ich nämlich in den Code nicht eingefügt, das war der Programmierer. Hat er es dann eventuell oben vergessen?

    Teratek

    • Schreiberling
    • Beiträge: 273
    Re: Dateiendung bei File-Upload überprüfen
    Antwort #29 am: 23. Juni 2016, 10:31:24
    Wenn du möchtest, dass inx dateien auch hochgeladen werden können dann musst du inx auch in die liste der erlaubten Dateien einfügen und es so ändern wie ich in dem Post vorher es gezeigt habe
    Templateshop - Eine große Auswahl an neuen und modernen Templates für die modified eCommerce Shopsoftware
    38 Antworten
    23639 Aufrufe
    23. Januar 2010, 15:42:23 von Tomcraft
    3 Antworten
    3721 Aufrufe
    08. August 2010, 16:03:02 von FritzensFataleFotos
    2 Antworten
    2822 Aufrufe
    22. Januar 2015, 10:17:03 von Apex
    6 Antworten
    4038 Aufrufe
    03. März 2014, 14:48:49 von Modulfux