tutorials.de Buch-Aktion 05/2012
Like Tree2Danke
  • 1 Beitrag von maeTimmae
  • 1 Beitrag von Dr Dau
ERLEDIGT
JA
ANTWORTEN
8
ZUGRIFFE
582
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    matze1983 matze1983 ist offline Mitglied Gold
    Registriert seit
    May 2007
    Beiträge
    124
    Hallo,
    soweit so gut, mein Script funktioniert. Ich kann Bilder hochladen. Jedoch geht das nur mit GIF's...wenn ich bei image statt gif, jpeg verwende funktioniert es nicht. Ich habe mich schon im Forum umgeschaut....da hieß es, dass man auf die MIME-Types achten soll. Nun ich habe mich aber daran gehalten....gibt es denn noch andere Ursachen dafür?
    Geändert von matze1983 (02.11.07 um 19:19 Uhr)
     

  2. #2
    Avatar von KurtKabine
    KurtKabine KurtKabine ist offline Mitglied Bronze
    Registriert seit
    Oct 2007
    Ort
    Nähe Basel
    Beiträge
    35
    Hast du "jepeg" geschrieben? Zeig sonst mal den Script...
     
    Gib mir n Punkt ;)

    klickklick
    -----------------------------------------------------------------------------
    "Teamwork heißt, das alle teamen und einer wörkt."
    Klaus Klages
    ( Ich bin am teamen )

    Meene HP :) www.wstyle.ch

  3. #3
    matze1983 matze1983 ist offline Mitglied Gold
    Registriert seit
    May 2007
    Beiträge
    124
    also ich habe jpeg...so wie es der MIME-Type definiert geschrieben.

    PHP-Code:
     if($type!='image/jpeg'
    der rest funktioniert ja soweit, nur hier haut er mir immer eine Fehlermeldung raus, das error, dass es sich nicht um dieses Format handelt.
     

  4. #4
    Registriert seit
    Oct 2005
    Ort
    Nottuln
    Beiträge
    1.282
    Nutzt du Windows? Weil wenn du Linux nutzt:

    jpg != JPG
    jpeg != jpeg

    Und guck auch mal, ob die Endung vielleicht .jpg und nich .jpeg ist
     
    Nein, ich bin kein Programmier-könig. Aber Spaß macht es trotzdem!

  5. #5
    matze1983 matze1983 ist offline Mitglied Gold
    Registriert seit
    May 2007
    Beiträge
    124
    ne ich benutze windows.

    aber ich weis woran es liegt..ich habe via echo $type auschreiben lassen. Es muss also statt jpg oder jepg -pjepg heißen, warum auch immer,..weil im mimetype steht ja jpeg, und dann müssten ja alle jpg formate funktionieren. das versteh ich nicht.
    Aber nun stellt sich mir die Frage, ob jetzt jeder seine jpg bilder hochladen kann. wie kann man das jetzt verbessern? sollte man ein array schreiben, welches alle beinhaltet, also jpg, jepeg, pjpeg etc. oder sollte man via oder es so schreiben, dass halt bmp, gif, tif usw. ausgeschlossen würden...was wäre jetzt der bessere weg?
    Geändert von matze1983 (02.11.07 um 22:18 Uhr)
     

  6. #6
    Avatar von maeTimmae
    maeTimmae maeTimmae ist offline Mitglied Platin
    Registriert seit
    Aug 2007
    Ort
    Erfurt, Saarbrücken, Leipzig und Fulda
    Beiträge
    515
    Der Content MimeType wird beim normalen Hochladen via HTTP vom Browser mitgesendet, und da vor allem Microsoft gerne Standards umgeht (oder auch nicht), kommt es zu der Interferenz, dass womöglich zB ein Mozilla Browser image/jpeg mitsendet, der MSIE jedoch image/pjpeg. Interessanter ist jedoch der Fakt, dass diese Angaben nie 100%ig sicher sind. Die Garantie, Bilder vom Typ JPEG, GIF oder PNG zu verarbeiten, kann dateierweiterungsunabhängig erlangt werden, indem der Content MimeType ermittelt wird. Wie das geht ist kurz erklärt aber leider etwas umständlich zu lösen in PHP - Entweder über die entsprechende PECL (oder war es PEAR?) Erweiterung oder über einen Systembefehl (Beispiel gilt nur für Linux Systeme):
    PHP-Code:
    list( $mime ) = explode';'trimexec'file -ib ' escapeshellarg$path ) ) ) ); 
    Hab nochmal schnell die PHP Doku konsultiert: fileinfo() und mime_content_type() sind wohl doch die günstigeren Wege für den Hausgebrauch

    Anhand der Ergebnisse könntest du die hochgeladenen Daten im temporären Verzeichnis verwerten und uniform auf zB "image/jpeg" und so weiter überprüfen.
    matze1983 bedankt sich. 

  7. #7
    Avatar von Dr Dau
    Dr Dau Dr Dau ist offline ich wisch hier durch
    Registriert seit
    Feb 2005
    Ort
    hinterm Mond gleich Links
    Beiträge
    6.160
    Blog-Einträge
    4
    Hallo!

    Wie kommst Du eigentlich auf jepeg?
    Wo auch immer Du diese Schreibweise her hast, sie ist falsch.
    Siehe dazu auch die Trefferquote bei Google:
    image/jepeg 9 Treffer.
    image/jpeg ungefähr 2.790.000 Treffer.

    Zum Thema jpeg vs. pjpeg:
    Klare Aussagen scheint es hier nicht zu geben.
    Die einen sagen dass es am Grafikprogramm liegt, die anderen sagen das es am Browser liegt.
    Daher mein Rat: prüfe ob das Bild vom Typ image/jpeg oder image/pjpeg ist.
    Du könntest natürlich auch mit getimagesize() prüfen ob das Bild vom Typ "2" (JPG) ist:
    PHP-Code:
    $bild "bild.jpeg";
    $size getimagesize($bild);
    if(
    $size[2] == 2) {
         echo 
    $bild." ist ein ".$size[2];
    } else {
        echo 
    $bild." ist <u>kein</u> JPG, sondern ein ".$size[2];

    Gruss Dr Dau
    matze1983 bedankt sich. 
    Schri-Schra-Schrödi *g*
    mehrspaltiges/zeiliges Seitenlayout mit DIV's und CSS
    Dinge, die mit Tabellen besser klappen als mit CSS
    Ausgabe von Datum/Zeit unabhängig von der Server Zeitzone [php]
    Meine Links zum Thema Linux (Last update: 29.10.2011)
    Kein Busen ist so flach wie das Niveau dieser Party!
    ----
    Alte Weisheit: wer uns in den Arsch kriecht wird beschissen!
    ----
    Ich habe 3 Kinder und kein Geld!
    Warum kann ich nicht keine Kinder haben und 3 Geld?! (Homer Jay Simpson)

  8. #8
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Zusätzlich ist es noch wichtig, darauf zu achten, dass die Datei mit der richtigen Dateiendung gespeichert wird. Denn auf die vom Client gesendeten Daten ist kein Verlass und so kann ein vermeintlich als Grafik getarntes PHP-Skript auf deinen Webserver gespeichert und dann auch ausgeführt werden.
     
    Markus Wulftange

  9. #9
    matze1983 matze1983 ist offline Mitglied Gold
    Registriert seit
    May 2007
    Beiträge
    124
    Vielen Dank für die vielen Antworten.
    Ich werde mal schauen, was und wie ich es nun realisiere, dann stell ich das hier noch rein.
    Bis dahin erstmal danke!
    Mathias
     

Ähnliche Themen

  1. Mainboardkauf - worauf muss ich achten?
    Von multimolti im Forum Hardware
    Antworten: 2
    Letzter Beitrag: 18.03.09, 21:45
  2. Camcorder - Worauf muss ich beim Kauf achten?
    Von RaPhNiX im Forum Videoschnitt, Videotechnik & -produktion
    Antworten: 9
    Letzter Beitrag: 20.07.07, 12:32
  3. Große Webapplikationen - Worauf muss man achten?
    Von Julian Maicher im Forum Coders Talk
    Antworten: 6
    Letzter Beitrag: 28.10.06, 14:59
  4. DVB-T: Worauf muss ich beim Kauf achten?
    Von Sven Mintel im Forum Hardware
    Antworten: 12
    Letzter Beitrag: 24.08.05, 12:46
  5. Worauf ist beim Stativ zu achten?
    Von ChristineB im Forum Fotografie & Digitalfotografie
    Antworten: 3
    Letzter Beitrag: 22.02.04, 17:50