WinFuture-Forum.de: Bilder Verkleinern - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Bilder Verkleinern


#1 Mitglied ist offline   K050V4 

  • Gruppe: aktive Mitglieder
  • Beiträge: 788
  • Beigetreten: 13. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Stuttgart
  • Interessen:(X)HTML<br />CSS2+<br />PHP 4/5<br />MySQL 5<br />Symfony 1.2+<br />JavaScript / AJAX<br />jQuery<br />C++<br />C#<br />Java<br />...

  geschrieben 22. April 2006 - 16:42

Hallo Leutz ich wolte gern auf meiner Homepage ein Script machen womit man Bilder verkleinern kann. Das Bild wird hochgeladen und dan vcerkleinernt, angezeigt und wieder gelöscht. Nur leider tritt immer ein blöder Fehler auf und ich weiss nicht woran das liegt.

Hier der Code:
(Die ... stehen für den Uploadteil)

<?php

...

$pro = $_POST['pro'];
$bild = "$uploddir$newname$ext";
$pic = getimagesize($bild);

$oldbreite = $info[0];
$oldhoehe = $info[1];

$newbreite = round($oldbreite/$pro);
$newhoehe = round($oldhoehe/$pro);

$altesBild=ImageCreateFromJPEG("$bild");
$neuesBild=imageCreate($newbreite,$newhoehe);
imageCopyResized($neuesBild,$bild,0,0,0,0,$newbreite,$newhoehe,$oldbreite,$oldhoehe);
ImageJPEG($neuesBild);

echo '<img src="'.$neuesBild.'">';
?>


Und ich bekomme immer diesen Fehler angezeigt:

Zitat

Warning: imagecreate(): Invalid image dimensions in /usr/export/www/vhosts/funnetwork/hosting/goldnick/2/upload.php on line 48

Warning: imagecopyresized(): supplied argument is not a valid Image resource in /usr/export/www/vhosts/funnetwork/hosting/goldnick/2/upload.php on line 49

Warning: imagejpeg(): supplied argument is not a valid Image resource in /usr/export/www/vhosts/funnetwork/hosting/goldnick/2/upload.php on line 50



Was ist an den Code falsch? :)

Hoffe es kann mir jemand weiterhelfen ...

Danke im voraus

MfG Nick

Dieser Beitrag wurde von keny bearbeitet: 22. April 2006 - 16:43

Zitat

"In der Welt des Erkennbaren ist die Idee des Guten die höchste." - Platon

Spritify! Easy CSS-Sprite-Generator | Albanisch Deutsch Wörterbuch
0

Anzeige



#2 _rjchio_

  • Gruppe: Gäste

geschrieben 22. April 2006 - 19:43

Ist das Bild (ImageCreateFromJPEG("$bild")) auch wirklich ein Jpeg-Bild? Könnte ja z.B. auch ein Png-Bild mit falscher Endung sein :doctor:
Das solltest du mal mit einem anderen Bild testen...

MfG rjchio
0

#3 Mitglied ist offline   Floele 

  • Gruppe: aktive Mitglieder
  • Beiträge: 919
  • Beigetreten: 22. Juni 04
  • Reputation: 0

geschrieben 22. April 2006 - 21:52

Zitat

$altesBild=ImageCreateFromJPEG("$bild");


Und in Zukunft kannst du die Anführungszeichen weglassen.
0

#4 Mitglied ist offline   K050V4 

  • Gruppe: aktive Mitglieder
  • Beiträge: 788
  • Beigetreten: 13. August 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Stuttgart
  • Interessen:(X)HTML<br />CSS2+<br />PHP 4/5<br />MySQL 5<br />Symfony 1.2+<br />JavaScript / AJAX<br />jQuery<br />C++<br />C#<br />Java<br />...

  geschrieben 22. April 2006 - 22:50

Ja ich habe es mit einer .jpg datei ausprobiert

Ich habe das jetzt noch mal neu gemacht .... also die anderen Fehler hab ich gelöst jetzt tritt ein neuer auf :doctor:

Hier mal der Code

<?php

...

$pro = $_POST['pro'];
$altesBild = "$uploddir$newname$ext";
$pic = getimagesize($altesBild);

$oldbreite = $pic[0];
$oldhoehe = $pic[1];
$typ = $pic[2];

$newbreite = round($oldbreite/$pro);
$newhoehe = round($oldhoehe/$pro);

switch ($typ)
{
case 1:
$neuesBild = imagecreatefromgif("$altesBild");
break;
case 2:
$neuesBild = imagecreatefromjpeg("$altesBild");
break;
case 3:
$neuesBild = imagecreatefrompng("$altesBild");
break;
}

$neuespic = imagecreate($newbreite, $newhoehe);
$neuesBild = imagecopy($altesBild, $neuespic, $oldbreite, $oldbreite, $newbreite, $newhoehe, $newbreite, $newhoehe);

switch ($typ)
{
case 1:
imagegif($neuesBild,"small/$pic");
break;
case 2:
imagejpeg($neuesBild,"small/$pic",50);
break;
case 3:
imagepng($neuesBild,"small/$pic");
break;
}
?>



Zitat

Warning: imagecopy(): supplied argument is not a valid Image resource in /usr/export/www/vhosts/funnetwork/hosting/goldnick/2/upload.php on line 62

Warning: imagejpeg(): supplied argument is not a valid Image resource in /usr/export/www/vhosts/funnetwork/hosting/goldnick/2/upload.php on line 70


Mit der Funktion imagecopy() komm ich nicht klar :)

Kann das vllt. jemand erklären? Wäre sehr nett.

MfG Keny

Zitat

"In der Welt des Erkennbaren ist die Idee des Guten die höchste." - Platon

Spritify! Easy CSS-Sprite-Generator | Albanisch Deutsch Wörterbuch
0

#5 _rjchio_

  • Gruppe: Gäste

geschrieben 23. April 2006 - 06:26

Ich vermute hier den Fehler:
$altesBild = "$uploddir$newname$ext";

Du musstest (vermute ich zumindest) folgendes machen: :rolleyes:
$altesBild = imagecreatefromjpeg("$uploddir$newname$ext");


oder man könnte es auch gleich ins Script integrieren:
<?php

...

$pro = $_POST['pro'];
$altesBild = "$uploddir$newname$ext";
$pic = getimagesize($altesBild);

$oldbreite = $pic[0];
$oldhoehe = $pic[1];
$typ = $pic[2];

$newbreite = round($oldbreite/$pro);
$newhoehe = round($oldhoehe/$pro);

switch ($typ)
{
case 1:
$neuesBild = $altesBild = imagecreatefromgif("$altesBild");
break;
case 2:
$neuesBild = $altesBild = imagecreatefromjpeg("$altesBild");
break;
case 3:
$neuesBild = $altesBild = imagecreatefrompng("$altesBild");
break;
}

$neuespic = imagecreate($newbreite, $newhoehe);
$neuesBild = imagecopy($altesBild, $neuespic, $oldbreite, $oldbreite, $newbreite, $newhoehe, $newbreite, $newhoehe);

switch ($typ)
{
case 1:
imagegif($neuesBild,"small/$pic");
break;
case 2:
imagejpeg($neuesBild,"small/$pic",50);
break;
case 3:
imagepng($neuesBild,"small/$pic");
break;
}
?>


MfG rjchio
0

#6 Mitglied ist offline   Hauner 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.297
  • Beigetreten: 03. Januar 05
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 24. April 2006 - 20:31

Zitat

Ich vermute hier den Fehler:
Aber im Grunde wäre das ja doppelt gemoppelt. Weil die Funktion imagecreatefromjpeg würde darunter dann nochmals aufgerufen werden. Die Variable $altesBild wird ja im oberen Teil des Codes nur gesetzt, und nicht benutzt.
Was du versuchen könntest, ist, sie anders zu verknüpfen, wie zum Beispiel:
$altesBild = $uploddir.$newname.$ext;
Ich hatte zumindest auch mal Probleme bei der Variablensetzung, als ich sie so wie du verknüpfte.
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0