Ankündigung

Einklappen
Keine Ankündigung bisher.

Externes Bild auf Grösse überprüfen

Einklappen

Neue Werbung 2019

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

  • Externes Bild auf Grösse überprüfen

    Hallo, derzeitig bastel ich an einer Avatar Funktion, diese soweit auch ganz gut funktioniert. Ich checke anbei, ob die externe URL überhaupt eine Bilddatei ist, nun möchte ich noch gern prüfen ob das Bild nich 200kb überschreitet. Wie stelle ich dies am geschicktesten an?


    Anbei der kleine Codeauszug:
    PHP-Code:
     if(!$img && (exif_imagetype($UserImg) != IMAGETYPE_JPEG || exif_imagetype($UserImg) != IMAGETYPE_PNG || exif_imagetype($UserImg) != IMAGETYPE_GIF))
                    {
                        
    $db->query("UPDATE ".USERS." SET `avatar` = '".$NoImg."' WHERE `id` = '".$USER["id"]."';");
                    } 


  • #2
    PHP: filesize - Manual
    http://hallophp.de

    Kommentar


    • #3
      HEAD-Request mit fsockopen machen, Content-Length-Header auswerten.


      Btw., wenn $UserImg bei dir eine HTTP-Adresse enthält, dann solltest du tunlichst zusehen, dass du diese nur einmal anforderst - so wie du das derzeit geschrieben hast, wird nämlich vermutlich jedes Mal ein neuer Request gemacht (sofern PHP bei HTTP-Requests nicht selber Caching implementiert, aber darauf würde ich mich lieber nicht verlassen).

      Kommentar


      • #4
        Das ist unter Einstellungen und wird nicht oft aufgerufen.

        Die URL wird folgend eingeholt...
        PHP-Code:
        $Avatar   request_var('avatar'''); 
        ...und hier nochmals escaped
        PHP-Code:
        'avatar'   => rawurldecode($USER['avatar']), 

        Kommentar


        • #5
          Zitat von Emskopp Beitrag anzeigen
          Das ist unter Einstellungen und wird nicht oft aufgerufen.
          Wenn du es in einem Bearbeitungsschritt mehrfach einliest, obwohl einmal reichen würde, ist das bereits zu viel.

          Und was uns die anderen Infos aus deinem Posting jetzt sagen sollen, sehe ich nicht.

          Kommentar


          • #6
            Zitat von ChrisB Beitrag anzeigen
            Wenn du es in einem Bearbeitungsschritt mehrfach einliest, obwohl einmal reichen würde, ist das bereits zu viel.

            Und was uns die anderen Infos aus deinem Posting jetzt sagen sollen, sehe ich nicht.
            Gehe ich mal durch:
            Die Bild URL wird eingeholt bzw. ausgegeben wenn schon eine besteht
            die (if) Abfrage checkt zur Sicherheit vor dem speichern nochmals ob es eine EXIF Datei ist, wenn nicht soll es das Standard Avatar setzen. Sollte also eigtl. passen.

            Kommentar


            • #7
              Sorry dass ich den Thread nochmal hochholen muss, nun hab ich mir vll. doch nen kleinen Denkfehler eingebaut. Externes Bild schön und gut, aber nun kommt die Problematik, dass wenn ein Bild nicht verfügbar ist auf dem Zweitserver, dass ich nen Internal 500 bekomme und es alle Nutzer betrifft.

              hat jemand vll. nen kleinen Lösungsweg parat, wäre super nett.

              Kommentar

              Lädt...
              X