Fehler warum? Image Create

my-azur

Mitglied
Hi Leute kann mir jemand sagen wo der Fehler in diesem Code ist?
PHP:
<?php
    include("db.php");
    // Header setzten
    header("Content-type: image/png");
    
    // Bilder laden
    $imgsrc = imagecreatefromjpeg("bg.jpg");
    
    // Bild Infos
    $width = imagesx($imgsrc);
    $height = imagesy($imgsrc);
    
    // Bilder erzeugen
    $img = imagecreatetruecolor($width, $height);
    
    // Bild einfügen
    imagecopy($img, $imgsrc, 0, 0, 0, 0, $width, $height);
    
    ##################################################
    $black = ImageColorAllocate($img, 0, 0, 0);
    $white = ImageColorAllocate($img, 255, 255, 255);
    ##################################################
    
   	 $sel = mysql_query("SELECT Nick FROM $db_signatur ORDER BY id DESC");
    	$row = mysql_fetch_assoc($sel);
    	$nick1 = $row['Nick'];
  		$sel = mysql_query("SELECT Nick FROM $db_signatur ORDER BY id DESC Limit 1,3");
    	$row = mysql_fetch_assoc($sel);
    	$nick2 = $row['Nick'];
  		$sel = mysql_query("SELECT Nick FROM $db_signatur ORDER BY id DESC Limit 2,4");
    	$row = mysql_fetch_assoc($sel);
    	$nick3 = $row['Nick'];
  		$sel = mysql_query("SELECT Nick FROM $db_signatur ORDER BY id DESC Limit 3,5");
    	$row = mysql_fetch_assoc($sel);
    	$nick4 = $row['Nick'];
  		$sel = mysql_query("SELECT Nick FROM $db_signatur ORDER BY id DESC Limit 4,5");
    	$row = mysql_fetch_assoc($sel);
    	$nick5 = $row['Nick'];
    		$sel = mysql_query("SELECT Text FROM $db_signatur ORDER BY id DESC");
    	$row = mysql_fetch_assoc($sel);
    	$text1 = $row['Text'];
  		$sel = mysql_query("SELECT Text FROM $db_signatur ORDER BY id DESC Limit 1,3");
    	$row = mysql_fetch_assoc($sel);
    	$text2 = $row['Text'];
  		$sel = mysql_query("SELECT Text FROM $db_signatur ORDER BY id DESC Limit 2,4");
    	$row = mysql_fetch_assoc($sel);
    	$text3 = $row['Text'];
  		$sel = mysql_query("SELECT Text FROM $db_signatur ORDER BY id DESC Limit 3,5");
    	$row = mysql_fetch_assoc($sel);
    	$text4 = $row['Text'];
  		$sel = mysql_query("SELECT Text FROM $db_signatur ORDER BY id DESC Limit 4,5");
    	$row = mysql_fetch_assoc($sel);
    	$text5 = $row['Text'];
    
    	mysql_close();
    
    ImageFill($img, 0, 0, $white);
    ImageString($img, 2, 5, 5,"$nick1: $text1", $black);
    ImageString($img, 2, 5, 15,"$nick2: $text2", $black);
    ImageString($img, 2, 5, 25,"$nick3: $text3", $black);
    ImageString($img, 2, 5, 35,"$nick4: $text4", $black);
    ImageString($img, 2, 5, 45,"$nick5: $text5", $black);
    
    ###################################################
    
    // Save image:
    Imagepng($img, "bild.jpg");
    
    
    Imagepng($img);; # Hier wird das Bild PNG zugewiesen
    ImageDestroy($img) # Hier wird der Speicherplatz für andere Sachen geereinigt
    ?>
ind der db.php steht das hier:
PHP:
<?php
   $connectionid  = mysql_connect ("localhost", "USER", "PASSWORT");
   if (!mysql_select_db ("DATENBANK", $connectionid))
   {
     die ("Keine Verbindung zur Datenbank");
   }
   
   $db_signatur = "Signatur";
   $db_signatur_ip = "Signatur_ip";
   $db_signatur_boese = "Signatur_boese";
   $db_signatur_count = "Signatur_count";
   
   ?>

Fehler meldung ist das Fehler im Bild seien und es nicht angezeigt werden kann!

Am Anfang hat es geklappt aber als ich in der SQL Abfrage den Datenbanknamen durch eine Variable($db_signatur) ausgetauscht habe ging es nicht mehr!

Danke für Hilfe
 
Kommentier mal den header raus und lass dir den MySQL Error ausgeben, wenn du
an der DB Abfrage geschraubt hast kann der Fehler nur daher rühren.

Ich würde den String sowieso richtig verknüpfen:
PHP:
$sel = mysql_query("SELECT `Nick` FROM `".$db_signatur."` ORDER BY `id` DESC");

@ Jörg: Das ist Dummsinn ;)

Der Header teilt dem Browser mit, was kommt. Und da er unten
PHP:
Imagepng($img, "bild.jpg");
schreibt ist der PNG Header fast korrekt. Das bild sollte natürlich .png heißen.
Wo er das Bild herholt ist doch dem Header egal. :-)
 
Zuletzt bearbeitet:
Zurück