Mit php ein Bild verkleinern und dann hochladen

Alles, was PHP betrifft, kann hier besprochen werden.

Mit php ein Bild verkleinern und dann hochladen

Postby DaPhil » 14. April 2006 10:39

Hallo, ich möchte mit move_uploaded_file ein Bild hochladen! Klappt auch, aber ich möchte VOR dem Upload die Bilder noch verkleinern! Dafür benutze ich imagecopyreampled(...)! Wenn ich aber nun imageJpeg($imgin, $imgout) benutze wird das Bild zwar gespeichert da wo ich es möchte, aber zusätzlich wird das Bild an den Browser übergeben, der dann kein Bild anzeigt, sondern als fehlenden Link! Was mache ich falsch, und ist es überhaupt notwendig, danach noch mit move_uploaded_file hochzuladen oder reicht es, das ganze mit den Bildfunktionen zu managen?
Vielen Dank im vorraus
DaPhil
 
Posts: 21
Joined: 29. August 2005 11:10
Location: Marburg

Postby Wiedmann » 14. April 2006 11:53

Was mache ich falsch

Keine Ahnung, kenne deinen Code nicht.

und ist es überhaupt notwendig, danach noch mit move_uploaded_file hochzuladen oder reicht es, das ganze mit den Bildfunktionen zu managen?

a) mit move_uploaded_file() lädt man keine Datei hoch, sondern verschiebt eine hochgeladene Datei.

b)ansonsten ist mir immer noch nicht klar ist was du eigentlich machst:
1) ein User lädt eine Datei hoch
2) die verkleinerst die Datei
3) die verkleinerte Datei wird als Download dem User angeboten
4) danach brauchst du weder das orginale noch das verkleinerte Bild

Trifft das so ungefähr zu?
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby DaPhil » 14. April 2006 15:31

OK, ich möchte per <input type=file...> einem User die Möglichkeit bieten, ein Bild hochzuladen! Dieses soll aber nicht in Ursprungsgröße, sonder verkleinert in einem Ordner landen!
DaPhil
 
Posts: 21
Joined: 29. August 2005 11:10
Location: Marburg

Postby semtex » 14. April 2006 16:55


<form action=http://localhost/bild.php enctype=multipart/form-data method=post>
Wählen Sie eine Datei
<input type=file name=datei>
<input type=submit value=hochladen>
</form>




datei : Bild.php

<?
$dateiname=$HTTP_POST_FILES['datei']['name'];
copy($datei, "bilder/$dateiname");
$groesse=getimagesize("bilder/$dateiname");
$breite=$groesse[0];
$hoehe=$groesse[1];
$typ=$groesse[2];
print $typ;
$hoehe2=$hoehe*100/$breite;
$image1 = imagecreate(100,$hoehe2);
switch ($typ)
{
case 1:
$image = imagecreatefromgif("bilder/$dateiname");
break;
case 2:
$image = imagecreatefromjpeg("bilder/$dateiname");
break;
case 3:
$image = imagecreatefrompng("bilder/$dateiname");
break;
case 4:
$image = imagecreatefromwbmp("bilder/$dateiname");
break;
default: $gestorben="ja";
}
imagecopyresized($image1, $image, 0,0, 0,0,100,$hoehe2,$breite,$hoehe);

switch ($typ)
{
case 1:
imagegif($image1,"bilder/thumbs/$dateiname");
break;
case 2:
imagejpeg($image1,"bilder/thumbs/$dateiname",50);
break;
case 3:
imagepng($image1,"bilder/thumbs/$dateiname");
break;
case 4:
imagewbmp($image1,"bilder/thumbs/$dateiname");
break;
default: $gestorben="ja";
}
print "Das Bild wurde hochgeladen und abgespeichert.".
" Der Thumbnail ist im Ordner thumbs, das Bild in bilder";
?>
semtex
 
Posts: 57
Joined: 12. April 2006 16:41

Postby Wiedmann » 14. April 2006 18:53

ich möchte per <input type=file...> einem User die Möglichkeit bieten, ein Bild hochzuladen! Dieses soll aber nicht in Ursprungsgröße, sonder verkleinert in einem Ordner landen!

In dem Fall brauchst du move_uploaded_file() nicht und kannst das rein mit den Image-Funktionen machen.
Wiedmann
AF Moderator
 
Posts: 17102
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany


Return to PHP

Who is online

Users browsing this forum: No registered users and 11 guests