Stefan: Problem bei Bilderstellung mit PHP

Hallo,

kann mir jemand helfen? Habe ein Problem bei der Bilderstellung mit PHP. Schaut mal hier:

http://wendsche-weihnacht.de/fotoalbum/wuerfel.php?create=1

Das Bild wird nicht richtig erstelllt.

GD Support enabled
GD Version 1.6.2 or higher

Woran kann das liegen?
Die Bilder werden wie folgt bearbeitet. Danke für Eure Hilfe ...

//allgemeine Angaben
$size_wurfel = 190;
$rand_verlust = 15;
$wuerfel_logo = "../images/wuerfel_logo.jpg";

//Original-Bildquellen
$array_wuerfelbilder = $_SESSION['wuerfelbilder'];

//Logo hinzufügen
array_push($array_wuerfelbilder,$wuerfel_logo);

//Größe für neues Bild berechnen
$width_img  = 3*$size_wurfel; // Weite des neuen Bildes
$height_img  = 4*$size_wurfel; // Höhe des neuen Bildes

//Breite für Klebelasche berechnen
$width_lasche = $size_wurfel/10;

//Vorlage für neues Bild erstellen
if(function_exists("gd_info"))
{
$img_new = imagecreateTrueColor($width_img,$height_img+$width_lasche);
}
else
{
$img_new = imagecreate($width_img,$height_img+$width_lasche);
}

//Hintergrundfarbe für neues Bild
$farbe_body=imagecolorallocate($img_new,255,255,255);
imagefilledrectangle($img_new,0,0,$width_img,$height_img+$width_lasche,$farbe_body);

//Farbe für Klebelasche
$farbe_lasche = imagecolorallocate($img_new,230,230,230);

for($x=0;$x<count($array_wuerfelbilder);$x++)
{
//Originalbilder einlesen
$img_nr = $x+1;
$src = imagecreatefromjpeg("$array_wuerfelbilder[$x]");

//Position 1
  if($img_nr == 1)
  {
  //Bildausschnitt berechnen
  $dimensions = GetImageSize($array_wuerfelbilder[$x]);

if($dimensions[0]/$dimensions[1] >= 1)
  {
  //Horizontales Bild
  $x_pos_src  = $dimensions[0]/2-$dimensions[1]/2; // x-Position des Ausschnittes im Originalbild
  $y_pos_src  = $rand_verlust; // y-Position des Ausschnittes im Originalbild
  $width_src_img = $dimensions[1]; // Weite des Ausschnittes im Originalbild
  $height_src_img = $dimensions[1]-2*$rand_verlust; // Höhe des Ausschnittes im Originalbild
  }
  else
  {
  //Vertikales Bild
  $x_pos_src  = $rand_verlust; // x-Position des Ausschnittes im Originalbild
  $y_pos_src  = $dimensions[1]/2-$dimensions[0]/2; // y-Position des Ausschnittes im Originalbild
  $width_src_img = $dimensions[0]-2*$rand_verlust; // Weite des Ausschnittes im Originalbild
  $height_src_img = $dimensions[0]; // Höhe des Ausschnittes im Originalbild
  }

$x_pos_img  = $size_wurfel; // x-Position des Ausschnittes im neuen Bild
  $y_pos_img  = 0; // y-Position des Ausschnittes im neuen Bild

//Bildausschnitt in neues Bild übertragen
  imagecopyresized($img_new,$src,$x_pos_img,$y_pos_img,$x_pos_src,$y_pos_src,$size_wurfel,$size_wurfel,$width_src_img,$height_src_img);
  }

//usw.
}

  1. noch was:

    Das Problem tritt nur auf, wenn ich das Array aus der Session nehme:

    $array_wuerfelbilder = $_SESSION['wuerfelbilder'];

    Wenn ich das Array manuell erstelle klappt es:

    $array_wuerfelbilder = array("huensborn/huensbornschnee1.jpg",
                                 "huensborn/huensbornschnee1.jpg",
                                 "huensborn/huensbornschnee1.jpg",
                                 "huensborn/huensbornschnee1.jpg",
                                 "huensborn/huensbornschnee1.jpg");

    Was ist das ...?
    Danke

  2. ... und wenn ich verschiedenen Bilder nehme:

    $array_wuerfelbilder = array("huensborn/huensbornschnee1.jpg",
                                 "huensborn/huensbornschnee1.jpg",
                                 "huensborn/huensbornschnee2.jpg",
                                 "huensborn/huensbornschnee1.jpg",
                                 "huensborn/huensbornschnee1.jpg");