Hallo,
ich benötige mal einen Denkanstoss. Ich lasse mir ein SQL-Statement in mein Modul übergeben und lese das Ergebnis Zeile für Zeile aus. Das Ergebnis des Statements sieht zum Beispiel so aus:
--------------------------------------------------------------
|ID |ORT |Gebäude | Kosten
--------------------------------------------------------------
|0 |München |Hauptgeb | 1000
|1 |München |Nebengeb1 | 900
|2 |München |Nebengeb2 | 750
|3 |München |Nebengeb3 | 300
|4 |München |Nebengeb4 | 1450
|5 |Berlin |Hauptgeb | 4500
|6 |Berlin |Nebengeb1 | 2750
|7 |Berlin |Nebengeb2 | 400
|8 |Berlin |Nebengeb3 | 900
|9 |Berlin |Nebengeg4 | 300
|10 |Stuttgart |Hauptgeb | 1478
Um das ganze als Balkendiagramm darstellen zu können benutze ich GD::Graph::bars;
Die Daten werden dabei folgendermaßen angegeben:
@data = (
['Hauptgebäude','Nebengeb1','Nebengeb2','nebengeb3','Nebengeb4'],
[1000, 900, 750, 300, 1450],
[4500, 2750, 400, 900, 300]
);
Ich speichere natürlich die Daten vorher in Array’s, so dass mein Aufruf folgendermaßen aussieht:
@data = (
$referenz\_auf\_gebäude,
$referenz\_auf\_daten\_münchen,
$referenz\_auf\_daten\_berlin
);
Wenn ich das Ganze so ausgeben lasse, dann funktioniert es auch. Mein Problem ist jetzt allerdings folgendes:
Da ich nicht immer sicher weiß, wie viele Orte kommen (sprich, ob noch referenzen auf Stuttgart, Bremen, Hamburg folgen), kann ich nicht hart in den Quellcode schreiben ‚es folgen zwei Referenzen‘, sondern muss das variabel gestalten. Dazu muss ich auch die Arraynamen zur Laufzeit erstellen und variabel halten. Und genau hier liegt das Problem: Gibt es eine Möglichkeit Variablennamen variabel zur Laufzeit zu erstellen?
Ich hoffe das Problem wurde verstanden, ansonsten bitte kurze Rückmeldung!
Vielen Dank schon mal für alle hilfreichen Tipps!
[MOD] pre-Tags hinzugefügt