Hi!
Ich möchte auf meiner Homepage einen Bilder Upload zulassen. Aber nur JPG. Ich habe mir das so gedacht. Zuerst überprüfe ich mittels getimagesize ob es sich um ein jpg handelt und sicherheitshalber nochmal mittels $_FILES['userfile']['type'].
Das Prüfen des Types in $_FILES['userfile']['type'] solltest du aus Sicherheitsgründen weglassen, denn das kann der Client beliebig füllen. Eine Inhaltsprüfung ist die einzig verlässliche. (Und selbst in den Inhalt kann man noch Mist einbauen.)
Muss ich noch etwas beachten, oder ist es sicher?
Zunächst solltest du prüfen, ob der Upload überhaupt geklappt hat, und dazu das Feld 'error' befragen, sonst kanst du dir die ganze Verarbeitung sparen.
Und der Dateiname sollte geprüft oder selbst vergeben werden. Nicht dass der Client eine image.php sendet, die wie an den relevanten Stellen wie ein Bild aussieht, aber außerdem noch PHP-Code enthält. Im Upload-Verzeichnis das PHP-Parsen ganz zu verbieten, wäre auch noch eine Möglichkeit.
Lo!