JPG uploaden mit mime-type und bild verkleiner
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
benutzen
bild
brauche
browser
code
dank
datei
feld
funktion
hilfe
lade
mime
ordner
paar
schleife
speichern
test
type
versuchen
wissen
-
Hallo,
ich brauche Hilfe :( .
Versuche gerade mir anzueignen, wie man mehrere Bilder (5 Stück) auf einmal hochläd, dazu noch mit der Funktion mime-type überprüft ob es ein JPG ist und das bild auf eine Breite von 320px skaliert.
Kann mir evtl einer ein paar Code-Schnippsel geben, damit ich die Syntax vom mime-type und das mit dem skalieren kapiere?
Kann ich das so schreiben?:
if ( $_FILES['datei1']['tmp_name'] != "") {
dann hab ich ja 5 dateien ich hätte jetzt gern folgendes
Erster Schleifendurchlauf:
for ($i=0; $i<5; $i++) { if ( $_FILES['datei1']['tmp_name'] != "") {
Zweiter Schleifendurchlauf:
und so weiter.for ($i=0; $i<5; $i++) { if ( $_FILES['datei2']['tmp_name'] != "") {
Wie kann ich denn das machen?
Beitrag zuletzt geändert: 27.11.2010 0:39:17 von highborn -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Bild skalieren
codes zum skalieren (mit der php-eigenen gd-library) findest Du hier:
http://de.php.net/manual/de/function.imagecopyresampled.phpund hier:
http://de.php.net/manual/de/function.imagecopyresized.php
Eine liste aller gd-Befehle findest Du hier:
http://de.php.net/manual/de/ref.image.php
Ich habe mal einen Code rausgesucht und geändert, so das ein 320px breites Bild dabei herauskommen sollte:
<?php // The file $filename = 'test.jpg'; // Set a maximum height and width $width = 320; // Content type header('Content-type: image/jpeg'); // Get new dimensions list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; $height = $width/$ratio_orig; // Resample $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); // Output imagejpeg($image_p, null, 100); ?>
-kopiere den Code 1:1 in eine neue Datei
-gib der Datei einen Namen mit .php am ende & lade sie auf Deine Homepage
-lege im selben Ordner eine jpeg-Datei mit dem Namen test.jpg
-öffne deine php-Datei mit einem Browser, Du solltest das skalierte Bild sehen.
Um die Datei als neue Bilddatei zu speichern ersetze die letzte Zeile durch diesen Code:
imagejpeg($image_p, 'namederneuendatei.jpg', 100);
-
okay danke für den Code, habe ungefähr so vorgehabt umzusetzen.
Aber im mom geht es um das hochladen. Ausserdem hab ich ja 5 Dateien.
Funktionsweis:
Also man soll 5 Dateien anwählen können
Wenn das Feld nicht Leer ist, dann soll er das Bildhochladen.
Maximale Größe des Bildes 250kb.
Name der Bilder: pic1.jpg, pic2.jpg, pic3.jpg usw.
Anschließend soll das Bild verkleinert werden und überschrieben abgespeichert werden.
Was ich zusätzlich noch einbauen werde, das er pic1.jpg nochmal verkleinert und in einem neuen Ordner abspeichert.
So zum hochladen der 5 Dateien möchte ich eine Schleife benutzen. Weiß nicht wie ich das anderst machen soll.
Dazu sollte ich wissen, ob meine Codeschnippsel von oben richtig sind.
Vielen dank :) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage