Hi Zusammen!
Ausgangspunkt für mein Problem ist ein Formular, bei dem man aus 5 Kategorien jeweils Unterpunkte auswählen kann. Davon abhängig was gewählt wurde generiere ich eine Grafik.
Bei der Grafik, die ich im Moment bearbeite, benötige ich die Anzahl der gewählten Unterpunkte in Bezug auf die jeweilige Kategorie, wobei nur eine davon gewählt werden kann, ebenso wie fünf. Die Grafik selbst ist schon fertig, ich benötige nur noch einen "Adapter", der die Daten aus dem Formular, auf die Variablen in der Grafik anpasst.
PHP-Code:
if (!empty($sozcount)) {
$anzahlflag[0] = $sozcount;
} else $anzahlflag[0] = 0;
if (!empty($kerncount)) {
$anzahlflag[1] = $kerncount;
} else $anzahlflag[1] = 0;
if (!empty($fachcount)) {
$anzahlflag[2] = $fachcount;
} else $anzahlflag[2] = 0;
....
$anzahlstring = implode ($anzahlflag);
Die jeweilige Anzahl der benötigten Felder habe schon ($sozcount, $kerncount usw. ). Ich kann diese den Variablen der Grafik allerdings nicht 1:1 zuordnen, das würde nur funktionieren wenn es immer alle fünf wären.
Daher schreibe ich die einzelnen Werte als ein Flag, das ich dann in einen String umwandle.
Nun zu meinem eigentlichen Problem:
In einer Funktion möchte ich den String überprüfen, um die entsprechenden Variablen zurückzugeben und die dann mit list($variablen) den Variablen meiner Grafik zuordnen.
Die Anzahl der möglichen Kombinationen ist allerdings viel zu groß um alles händisch einzugeben (10000, 20000, .. 01000, 02000, .. bis 44444)
PHP-Code:
function xy {[INDENT]switch ($string) {
//1 gefülltes Feld
case '10000':
return array($pre_s11, $pre_s12, $pre_s13, $pre_s14);
break;
case '01000':
return array($pre_k11, $pre_k12, $pre_k13, $pre_k14);
break;
case '00100':
return array($pre_fa11, $pre_fa12, $pre_fa13, $pre_fa14);
break;
...
[/INDENT]}
Ich übergebe den String an die Funktion, und dort soll dann geprüft werden welche Variablen ich benötige.
Kann mir jemand weiter helfen, wie ich diese Überprüfung umsetze, ohne jeden String separat eingeben zu müssen?
Herzlichen Dank im Vorraus!
lueni