![]() |
Radiobuttons in PHP / Auswahl über Function Hi Leute. Ich hab mal ein wenig gecodet und ein kleines Projekt gestartet. Also, ich hab eine Datenbank, aus der in verschiedenen Diagramm-Arten (Linien-, Säulen-, Balkendiagramm) die Werte von den Parteien der Landtagswahlen ausgelesen werden. Also zum Beispiel die Ergebnisse der CDU. Die Wahlergebnisse werden in Prozent angezeigt, das natürlich für mehrere Jahre ( ich sag mal so von 1950 bis 2005 / insgesamt sind es 13 Werte die für jede Partei angezeigt werde) Aufjeden Fall kann ich die Partei über eine Select Box auswählen, das klappt auch. Der Quelltext für die Index.php [CODE] <form action="uebergabe.php" method="POST"> <select name='partei'> <option>SPD</option> <option>CDU</option> <option>FDP</option> <option>GRUENE</option> <option>SONSTIGE</option> </select> <br> <input type='radio' name='diagramm'>Kreisdiagramm<br> <input type='radio' name='diagramm'>Liniendiagramm<br> <input type='radio' name='diagramm'>Balkendiagramm<br> <input type='radio' name='diagramm'>Säulendiagramm<br> <input type='radio' name='diagramm'>Tortendiagramm<br> <input type="submit" value="Ergebnisse anzeigen"> </form>[/CODE] So, jetzt möchte ich, wie ihr im Quelltext seht, über die Radio-Buttons auswählen in welchem Diagramm die Ergebnisse angezeigt werden. Verständlich, wenn ich auf Kreisdiagramm klicke, sollen dann die Ergebnisse zum Beispiel für die CDU angezeigt werden. Das wollte ich über Funktionen machen. Hatte meinen Info-Lehrer schon gefragt. Aber wir kamen insgesamt nur soweit. Die Übergabe Seite uebergabe.php mit den Includes [php]<?php include("saeulendiagramm.php"); include("balkendiagramm.php"); include("liniendiagramm.php"); include("tortendiagramm.php"); include("kreisdiagramm.php"); $partei = $_POST["partei"]; $diagramm = $_POST["diagramm"]; ?>[/php] Und die Zeilen von meinem Lehrer, die oben in den Diagramm-Dateien stehen [php]<?php function kreisdiagramm($uebergabe) { $partei = $uebergabe; $verbindung = mysql_connect("localhost", "root", "") or die ("Keine Verbindung zum Server ".mysql_error()); $datenbank = mysql_select_db("landtagswahlen") or die ("Keine Datenbank ausgewähl"); $partei = $_POST['partei']; $sql = "SELECT $partei,jahr FROM ergebnisse"; $abfrage = mysql_query($sql); while ($datensatz = mysql_fetch_assoc($abfrage)) { $daten[] = $datensatz[$partei]; } // Einige Konstanten $imBreite = 1000; // Bildbreite und Hoehe $imHoehe = 1000; $x0 = $imBreite/2; // Mittelpunkt des Kreises $y0 = $imHoehe/2; $d1 = 0.7*$imBreite; // Durchmesser des Kreises $d2 = 0.7*$imHoehe; // Beide Halbachsen sind gleich lang // Grafik-Typ festlegen header("Content-type: image/png"); // Neues Bild erzeugen $bild = imagecreate($imBreite, $imHoehe); // Farben festlegen (RGB-Farben) // Hinweis: Die erste definierte Farbe legt die Hintegrundfarbe fest! $farbe[0] = imagecolorallocate($bild, 255, 255, 255); // weiss $farbe[1] = imagecolorallocate($bild, 192, 192, 192); // grau $farbe[2] = imagecolorallocate($bild, 0, 150, 255); // blau $farbe[3] = imagecolorallocate($bild, 255, 0, 0); // rot $farbe[4] = imagecolorallocate($bild, 0, 100, 200); $farbe[5] = imagecolorallocate($bild, 137, 255, 0); $farbe[6] = imagecolorallocate($bild, 50, 125, 89); $farbe[7] = imagecolorallocate($bild, 0, 200, 90); $farbe[8] = imagecolorallocate($bild, 234, 25, 30); $farbe[9] = imagecolorallocate($bild, 167, 25, 234); $farbe[10] = imagecolorallocate($bild, 198, 200, 100); $farbe[11] = imagecolorallocate($bild, 100, 90, 234); $farbe[12] = imagecolorallocate($bild, 12, 255, 0); $farbe[13] = imagecolorallocate($bild, 56, 5, 70); $farbe[14] = imagecolorallocate($bild, 100, 200, 50); $schwarz = imagecolorallocate($bild, 0, 0, 0); // Diagramm erstellen # Die Summe entspricht 100% $summe=0; for($i=0; $i<count($daten); $i++) $summe += $daten[$i]; $w[0] = 0; $ws = 0; // Winkelsumme, gleichzeitig Anfangs- bzw. Endwinkel for($i=0; $i<count($daten); $i++) { $p[$i] = $daten[$i]/$summe; # Daten -> Prozent $w[$i+1] = $p[$i]*360; # Prozent -> Winkel imagefilledarc($bild, $x0, $y0-$h, $d1, $d2, $ws, $ws+$w[$i+1], $farbe[$i+1], IMG_ARC_PIE); $ws = $ws + $w[$i+1]; } // Beschriftung imagestring($bild, 10, 0, 20*$schrift, $partei, $schwarz); // Legende for ($i=0; $i<=count($daten); $i++) { $prozent = $daten[$i]; imagestring($bild, 4, $i*50, 100, "$prozent"."%",$farbe[$i+1]); } // Das Bild ausgeben und den Speicherplatz wieder freigeben imagepng($bild); imagedestroy($bild); } ?> [/php] So, ich komm einfach nicht weiter. Es läuft einfach nicht. Er gibt keinen Fehler oder Sonstiges aus. Wäre sau cool, wenn ihr einen Lösungsansatz habt. Mir fehlt nämlich jeglicher...Vielen Dank euch! |
AW: Radiobuttons in PHP / Auswahl über Function Dir fehlt natürlich bei den Radio-Buttons noch das value-Attrbut. Ohne das kann natürlich kein Wert übergeben werden. Siehe dazu auch das [URL="http://de.selfhtml.org/html/formulare/auswahl.htm#radiobuttons"]SelfHTML-Beispiel[/URL]. |
AW: Radiobuttons in PHP / Auswahl über Function mokay,das value hab ich überall ersetzt und zwar so [CODE]value='kreisdiagramm'[/CODE] Aber soweit war ich leider auch schon. Mir ist grad nur nicht aufgefallen, dass ich das value vergessen hatte. Das Problem besteht aber leider noch... Danke für deine erste Hilfe |
AW: Radiobuttons in PHP / Auswahl über Function Ok, du solltest einfach mal systematisch durch die Dateien durchgehen, denn bisher wird ja gar keine von deinen Diagramm-Funktionen aufgerufen. Mit include werden sie nur in die uebergabe.php geladen, aber nicht ausgeführt. Ich habe die uebergabe.php mal neu geschrieben, so wie es funktionieren könnte (habe nichts getestet): [PHP]<?php $partei = $_POST["partei"]; $diagramm = $_POST["diagramm"]; if ($diagramm=="saeulendiagramm") { include("saeulendiagramm.php"); saeulendiagramm($partei); } elseif ($diagramm=="balkendiagramm") { include("balkendiagramm.php"); balkendiagramm($partei); } elseif ($diagramm=="liniendiagramm") { include("liniendiagramm.php"); liniendiagramm($partei); } elseif ($diagramm=="tortendiagramm") { include("tortendiagramm.php"); tortendiagramm($partei); } elseif ($diagramm=="kreisdiagramm") { include("kreisdiagramm.php"); kreisdiagramm($partei); } else echo "Kein gültiges Diagramm gewählt"; ?>[/PHP] [QUOTE]mokay,das value hab ich überall ersetzt und zwar so Code: value='kreisdiagramm' [/QUOTE] Hoffentlich hast du die values nicht alle auf kreisdiagramm gesetzt, sondern auch durch die entsprechenden Diagramme ersetzt... |
AW: Radiobuttons in PHP / Auswahl über Function Vielen Dank, jetzt läuft es. Bewertung folgt natürlich :) |
| Alle Zeitangaben in WEZ +1. Es ist jetzt 16:51 Uhr. |
Powered by vBulletin® Version 3.8.10 (Deutsch)
Copyright ©2000 - 2026, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.