Mailinglisten-Archive |
Am 28.10.04 10:29 schrieb Joern Grube : > Es bleibt mir also > letztendlich nichts weiter uebrig, als das Bild hochladen zu lassen und > dann erst zu pruefen :( Das bedeutet einiges an Mehrarbeit, ich muss die > Grafik naemlich auch noch einem Beitrag zuordnen und in diesem anzeigen. Die Tatsache, dass du das Bild hochladen läßt, heißt doch noch nicht, dass du es auch in deine Seite einarbeitest. Vielleicht kannst du ja mit dieser Funktion etwas anfangen. function upload_image($neudatei) { $fehler = ""; $upload = 0; switch ($neudatei["error"]) { case 4: $fehler .= "Es wurde keine Datei übermittelt."; break; case 1 OR 2: $fehler .= "Die Datei ".$neudatei["name"]." ist zu groß. Ein Bild darf nicht größer als ". (IMG_MAX_SIZE/1000) . "k und sollte nicht größer als ".(IMG_REC_SIZE/1000)."k sein."; break; case 3: $fehler .= "Die Datei ".$neudatei["name"]." wurde nur unvollständig übertragen. Bitte noch einmal versuchen."; break; case 0: $upload = 1; } if ($fehler) {return $fehler;} /* wenn upload = 1 liegt die Datei jetzt im tmp_uploadVerzeichnis, aus dem sie nach Ende des Skripts automatisch entsorgt wird */ if ($upload) { /* Prüfung des Dateityps */ $img_mime_types = array("image/jpeg","image/gif","image/png"); if (! in_array($neudatei["type"],$img_mime_types)) { $fehler .= "Achtung: nur Bilder in den Formaten jpg, gif oder png können verwendet werden. ". $neudatei["name"] . " ist aber vom Typ " .$neudatei["type"]; return $fehler; } /* Prüfung der Dateigröße */ if ($neudatei["size"] > IMG_MAX_SIZE) { $fehler .= "Ein Bild darf nicht größer als ". (IMG_MAX_SIZE/1000) . "k und sollte nicht größer als ".(IMG_REC_SIZE/1000)."k sein."; return $fehler; } /* Prüfung der Bildbreite */ $bildinfos = getimagesize($neudatei["tmp_name"]); if ($bildinfos[0] > IMG_MAX_WIDTH) { $fehler .= "Tut mir leid, Bilder dürfen nicht breiter als " . IMG_MAX_WIDTH." Pixel und sollten nicht breiter als " . IMG_REC_WIDTH." Pixel sein. Das angegebene Bild hat aber eine Breite von ".$bildinfos[0]." Pixeln."; return $fehler; } move_uploaded_file($neudatei["tmp_name"],TEMP_DIR."/".$neudatei["name"]); $neubild = ($bildinfos); $neubild["name"] = $neudatei["name"]; return $neubild; } } Achtung die Funktion stammt aus einer meiner Dauerbaustellen, soweit ich mich erinnere lief es aber. Die Konstanten stammen alle aus einer projektweiten ini-Datei. Gruß Susanne -- Susanne Jäger http://sujag.de - Webentwicklung und -beratung
php::bar PHP Wiki - Listenarchive