imageCreateFromJpeg Hilfe ""Anregung""

illetuffi

Mitglied
Hallo,
Bilder upload mit php und Prüfung ist soweit auch ok.
Ich möchte eine Vorschau von einem Hochgeladenen Bild anzeigen. Dieses Bild sollte aber noch nicht mit copy gespeichert werden.

Kann man mit
--- imageCreateFromJpeg ($_FILES[file][tmp_name]);
eine Vorschau realisieren

Könnte mir da, vielleicht jemand einen Anstoß geben.
Danke
 
Du musst mittels header() den Content-Type aendern und dann mittels imagejpeg() das Bild ausgeben.
Es darf aber nichts anderes ausgegeben werden.
 
Dennis Wronka hat gesagt.:
Du musst mittels header() den Content-Type aendern und dann mittels imagejpeg() das Bild ausgeben.
Es darf aber nichts anderes ausgegeben werden.
Ist das Ihr so in Ordnung!!

header("Content-Type: image/jpeg");
$bild=$_FILES[file][tmp_name].$_FILES[file][name];
$bild_vorschau =imagecreatefromjpeg("$bild");
imagejpeg($bild_vorschau);
 
illetuffi hat gesagt.:
Ist das Ihr so in Ordnung!!

header("Content-Type: image/jpeg");
$bild=$_FILES[file][tmp_name].$_FILES[file][name];
$bild_vorschau =imagecreatefromjpeg("$bild");
imagejpeg($bild_vorschau);
Bekomme diese Fehlermeldung ausgegeben.

Warning: Cannot modify header information - headers already sent by (output started at C:\Programme\xampp\htdocs\tvw\login\texte_abteilungen\upload_bild.php:18) in C:\Programme\xampp\htdocs\tvw\login\texte_abteilungen\upload_bild.php on line 69

Warning: imagecreatefromjpeg(C:\Programme\xampp\tmp\php38.tmpSchleifer.jpg) [function.imagecreatefromjpeg]: failed to open stream: No such file or directory in C:\Programme\xampp\htdocs\tvw\login\texte_abteilungen\upload_bild.php on line 71

Warning: imagejpeg(): supplied argument is not a valid Image resource in C:\Programme\xampp\htdocs\tvw\login\texte_abteilungen\upload_bild.php on line 72

Im xampp ist doch GB active.
 
Sieht schon nicht schlecht aus, jedoch ist die Angabe fuer den Dateinamen nicht ganz richtig.
Wenn Du mit dem temporaeren Image arbeiten willst reicht der TmpName aus. Beide Namen aneinander zu haengen macht in keinem Fall Sinn.
Du solltest aber die als Array-Index genutzten String als solche kennzeichnen, ansonsten koennte es einen Konflikt mit evtl. vorhandenen Konstanten geben.
PHP ist zwar kulant und behandelt die Angabe als String wenn keine solche Konstante existiert, wirft aber eine Notice oder Warning, vorausgesetzt das Error-Reporting ist entsprechend eingestellt.
Mit folgendem Code bist Du da auf der sicheren Seite was unerwuenschte Fehlermeldungen und die Gefahr eines Konflikts mit Konstanten angeht:
PHP:
$bild=$_FILES['file']['tmp_name'];
 
Ja das sieht ja schon gut aus.
bekomme aber jetzt ein haufen voller Zeichen angezeit hier nur ein parr.
ÿØÿà JFIF    ÿþ >CREATOR: gd-jpeg v1.0 (using IJG JPEG v62)

was ist den jetzt los.
 
Das sieht zumindest schonmal danach aus, dass das Bild ausgegeben wird. Aber scheinbar wird der Content-Type nicht gesetzt.
Gibst Du vorher noch irgendwas aus?
 
Die Vorschu ist in einer if –else pruefung in der else gebe ich nur unser sript aus.

Ich habe einen Test gemacht hier mal das script in der html Datei
, hier bekomme ich auch eine header Fehlermeldung wieso?


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Unbenanntes Dokument</title>
</head>

<body>
<?php header("Content-Type: image/png");

$bild =@ImageCreate(80, 30);
ImageColorAllocate ($bild, 255, 155, 0);
imagestring($bild, 3, 10, 10,"Hallo", 10);
ImagePng($bild);
?>
</body>
</html>
 
Vor header() darf absolut nichts ausgegeben werden, auch kein HTML. Denn durch eine Ausgabe werden die Header bereits an den Browser geschickt und koennen nicht mehr im Nachhinein manipuliert werden.
 
Zurück