Also ... Ich bisheriger Code war:
$frage = 'ZA01';
$items = array();
for ($i=1; $i<=05; $i++) {
$itemID = id($frage, $i);
$antwort = value($itemID);
if (trim($antwort) != '') {
replace('%text'.$i.'%', $antwort);
$items[] = $i;
}
}
if (count($items) > 0) {
question('GK01', $items);
}
Ziel ist es aber nicht, die Items in GK01 zu steuern, sondern die Spalten einer kombinierten Frage, bestehend aus GK01 bis GK05.
Dafür müssen wir den Code ein wenig anpassen - und zwar müssen wir die $items
noch in Frage-Kennungen umkodieren. Dafür verwenden wir ein Array mit den Kennungen (hier ausfürhlich, das könnte man auch kompakter bauen):
$spalten = array(
1 => 'GK01',
2 => 'GK02',
3 => 'GK03',
4 => 'GK04',
5 => 'GK05'
);
Dann wird umkodiert:
$fragen = [];
foreach ($items as $item) {
$fragen[] = $spalten[$item];
}
Und zuletzt wird die kombinierte Frage angezeigt:
show($fragen);
Nochmal im Gesamten:
$frage = 'ZA01';
$items = array();
for ($i=1; $i<=05; $i++) {
$itemID = id($frage, $i);
$antwort = value($itemID);
if (trim($antwort) != '') {
replace('%text'.$i.'%', $antwort);
$items[] = $i;
}
}
$spalten = array(
1 => 'GK01',
2 => 'GK02',
3 => 'GK03',
4 => 'GK04',
5 => 'GK05'
);
$fragen = [];
foreach ($items as $item) {
$fragen[] = $spalten[$item];
}
question($fragen);
Ich bin ehrlich gesagt nicht sicher, oder question($fragen)
ebenfalls funktioniert. Dies können Sie gerne einmal ausprobieren, bevor Sie die Funktion show()
verwenden, die sich noch im Teststadium befindet.