| Erfahrener Benutzer
Registriert seit: 21.08.2011
Beiträge: 302
PHP-Kenntnisse: Anfänger
| [Erledigt] Counter & GD "header already sent Problem" Hallo Leute,
wie der Threadtitel schon sagt habe ich ein wohlbekanntes "header already sent"-Problem in meinem neusten modul.
ich möchte mir einen counter bauen (bzw der ist schon da) und die in die datenbank gespeicherten werte möchte ich via GD script welches ich mir geschrieben habe bzw dran bin, als grafik anzeigen lassen.
die grafik zu erstellen ist auch "relativ" gut aufgegangen
(bis auf die tatsache, dass das irgendwie ne miese qualli is)
nur sobald ich via include meine db zugangsdaten einlesen && meine wertepaare zunächst nur ausgeben lassen möchte, was ich unabhängig geteste habe und was auch funktioniert, bekomme ich die fehlermeldung,
dass die grafik nicht erstellt werden kann, weil sie fehler enthällt.
vielleicht kann jemand mir erklären, wo mein fehler liegen könnte.
ich finde weder leerzeichen, wo keine hingehören (anfang/ende) noch haben mir bisher sonstige fehlerhilfen die mir google ausspuckte geholfen.
hier mal mein quelltext: PHP-Code: <?php header("Content-type: image/jpeg");
//---------------------------------------------------------------------------------------- //Datenbankverbindung //----------------------------------------------------------------------------------------
include ("include/db.php");
// Verbindung oeffnen und Datenbank ausweahlen $conID = mysql_connect( $db_host, $db_user, $db_pass ) or die( "Die Datenbank konnte nicht erreicht werden!" );
if ($conID)
{ mysql_select_db( $db_name, $conID ); }
//---------------------------------------------------------------------------------------- //Koordinaten aus Datenbank auslesen //----------------------------------------------------------------------------------------
// Datensätze aus mod_ov den Kategorien aus mod_ov_cat zuordnen $sql = "SELECT X, Y FROM spd_test ORDER BY X ASC";
$abfrageergebnis = mysql_query( $sql, $conID );
// lese Wertepaare X/Y
while( $datensatz = mysql_fetch_array($abfrageergebnis) )
{
echo $datensatz['X'] . '⁄' . $datensatz['Y'] .'<br>';
};
//---------------------------------------------------------------------------------------- //Bildmaße und Farben //----------------------------------------------------------------------------------------
$img = imagecreate(800,206);
$white = imagecolorallocate ($img, 255, 255, 255);
$grey_line = imagecolorallocate ($img, 195, 201, 204);
$black = imagecolorallocate ($img, 0, 0, 0);
$white = imagecolorallocate ($img, 255, 255, 255);
$uni = imagecolorallocate ($img, 0, 255, 73);
$red = imagecolorallocate ($img, 255, 0, 0);
$green = imagecolorallocate ($img, 0, 255, 0);
$blue = imagecolorallocate ($img, 0, 150, 222);
$lightblue = imagecolorallocate ($img, 217, 238, 247);
$w = imagecolorallocate($img, 255, 255, 255); $red = imagecolorallocate($img, 255, 0, 0);
//---------------------------------------------------------------------------------------- //Hintergrundfüllung //----------------------------------------------------------------------------------------
$corners = array(
0 => 0, 1 => 106, // 1
2 => 25, 3 => 120, // 2
4 => 50, 5 => 58, // 3
6 => 75, 7 => 29, // 4
8 => 100, 9 => 64, // 5
10 => 100, 11 => 175, // 6
12 => 0, 13 => 175, // 7
);
imagefilledpolygon($img, $corners, 7, $lightblue);
$style = array($grey_line, $grey_line, $w, $w); imagesetstyle($img, $style);
//---------------------------------------------------------------------------------------- //Rahmen //----------------------------------------------------------------------------------------
//Rahmen OBEN imageline($img, 0, 0, 799, 0, $grey_line);
//Rahmen RECHTS imageline($img, 799, 0, 799, 175, $grey_line);
//Rahmen UNTEN imageline($img, 0, 175, 799, 175, $grey_line);
//Rahmen LINKS Verticale Linie 1/8 imageline($img, 0, 0, 0, 175, IMG_COLOR_STYLED);
//---------------------------------------------------------------------------------------- //Sektorenlinien //----------------------------------------------------------------------------------------
//Verticale Linie Sektor 2/8 imageline($img, 100, 0, 100, 182, IMG_COLOR_STYLED);
//Verticale Linie Sektor 3/8 imageline($img, 200, 0, 200, 182, IMG_COLOR_STYLED);
//Verticale Linie Sektor 4/8 imageline($img, 300, 0, 300, 182, IMG_COLOR_STYLED);
//Verticale Linie Sektor 5/8 imageline($img, 400, 0, 400, 182, IMG_COLOR_STYLED);
//Verticale Linie Sektor 6/8 imageline($img, 500, 0, 500, 182, IMG_COLOR_STYLED);
//Verticale Linie Sektor 7/8 imageline($img, 600, 0, 600, 182, IMG_COLOR_STYLED);
//Verticale Linie Sektor 8/8 imageline($img, 700, 0, 700, 182, IMG_COLOR_STYLED);
//Horizontale Linie Sektor 1/4 imageline($img, 0, 35, 799, 35, $grey_line);
//Horizontale Linie Sektor 2/4 imageline($img, 0, 70, 799, 70, $grey_line);
//Horizontale Linie Sektor 3/4 imageline($img, 0, 105, 799, 105, $grey_line);
//Horizontale Linie Sektor 4/4 imageline($img, 0, 140, 799, 140, $grey_line);
//---------------------------------------------------------------------------------------- //Achsbeschriftung Horizontal //----------------------------------------------------------------------------------------
imagestring($img, 4, 782, 20, "20", $grey_line); // 20
imagestring($img, 4, 782, 55, "15", $grey_line); // 15
imagestring($img, 4, 782, 90, "10", $grey_line); // 10
imagestring($img, 4, 790, 125, "5", $grey_line); // 5
//---------------------------------------------------------------------------------------- //Achsbeschriftung Vertical //----------------------------------------------------------------------------------------
imagestring($img, 4, 56, 185, "29.09.2011", $grey_line); // 20
imagestring($img, 4, 156, 185, "03.10.2011", $grey_line); // 15
imagestring($img, 4, 256, 185, "07.10.2011", $grey_line); // 10
imagestring($img, 4, 356, 185, "11.10.2011", $grey_line); // 5
imagestring($img, 4, 456, 185, "15.10.2011", $grey_line); // 5
imagestring($img, 4, 556, 185, "19.10.2011", $grey_line); // 5
imagestring($img, 4, 656, 185, "23.10.2011", $grey_line); // 5
//---------------------------------------------------------------------------------------- //Linienstärke //----------------------------------------------------------------------------------------
imagesetthickness($img, 4);
//----------------------------------------------------------------------------------------
//Linie
imageline($img, 0, 106, 25, 120, $blue);
imageline($img, 25, 120, 50, 58, $blue);
imageline($img, 50, 58, 75, 29, $blue);
imageline($img, 75, 29, 100, 64, $blue);
//Punkte
// 0.Punkt
imagefilledellipse ($img, 0, 106, 6, 6, $blue); imageellipse ($img, 0, 106, 7, 7, $white); imageellipse ($img, 0, 106, 8, 8, $white);
// 1.Punkt
imagefilledellipse ($img, 25, 120, 6, 6, $blue); imageellipse ($img, 25, 120, 7, 7, $white); imageellipse ($img, 25, 120, 8, 8, $white);
// 2.Punkt
imagefilledellipse ($img, 50, 58, 6, 6, $blue); imageellipse ($img, 50, 58, 7, 7, $white); imageellipse ($img, 50, 58, 8, 8, $white);
// 3.Punkt
imagefilledellipse ($img, 75, 29, 6, 6, $blue); imageellipse ($img, 75, 29, 7, 7, $white); imageellipse ($img, 75, 29, 8, 8, $white);
// 4.Punkt
imagefilledellipse ($img, 100, 64, 6, 6, $blue); imageellipse ($img, 100, 64, 7, 7, $white); imageellipse ($img, 100, 64, 8, 8, $white);
/* Beispiele aus einem Tutorial
imagefilledrectangle($img, 20, 20, 60, 60, $red);
imagefilledellipse($img, 90, 100, 7, 7, $blue);
imagefilledellipse($img, 150, 40, 70, 40, $green);
imagefilledpolygon($img, $corners, 3, $black);
imagestring($img, 5, 103, 140, "Hallo Schatz!", $black); */
imagejpeg($img);
imagedestroy($img);
?>
__________________ irgendwann werde ich auch helfen können - vielleicht.
Geändert von Sickone4 (02.01.2012 um 11:58 Uhr).
|