Übersetzungen dieser Seite:
 

buttonDataCode() und buttonDataGet()

Die beiden Funktionen buttonDataCode() und buttonDataGet() erlauben es, Knöpfe auf einer Fragebogen-Seite zu platzieren, welche die aktuelle Seite wiederholen und dort Funktionen auslösen können.

Die Funktion buttonDataCode() erstellt einen Knopf, hinterlegt Daten und liefert den HTML-Code für den Knopf zurück.

string buttonDataCode(string Inhalt, [mixed Daten], [array|string CSS-Klasse])

  • InhaltHTML Code, der als Inhalt des Knopfes angezeigt werden soll
  • Daten – Daten, welche für den Knopf hinterlegt werden sollen, z.B. eine Zahl, Text oder ein Array.
  • CSS-Klasse – Eine oder mehrere CSS-Klassen, welche für den Knopf verwendet werden sollen.

Die Funktion buttonDataGet() prüft, ob zuvor ein mit buttonDataCode() erstellter Knopf gedrückt wurde, und liefert die dafür hinterlegten Daten zurück. Wenn keine Daten hitnerlegt wurden oder wenn kein Knopf gedrückt wurde, liefert die Funktion NULL.

mixed buttonDataGet()

Beispiel

In diesem Beispiel wird von dem Knopf einfach nur der String „nochmal“ übergeben. Wenn die Seite deshalb wiederholt wird, dann zählt der PHP-Code eine interne Variable IV01_01 hoch, und zeigt abhängig von der Variable eine andere Frage auf der Seite.

// Aktuellen Zähler prüfen,
// das (int) sorgt dafür, dass beim ersten Aufruf eine 0 verendet wird,
// das 'code:ifany' unterdrückt beim ersten Aufruf eine Warnung
$nummer = (int)value('IV01_01', 'code:ifany');
 
// Nummer ggf. hochzählen und die interne Variable aktualisieren
$data = buttonDataGet();
if ($data == 'nochmal') {
    $nummer = $nummer + 1;
    put('IV01_01', $nummer);
}
 
// Frage anzeigen - abhängig von der Nummer
// (die Einträge im Array haben die Indizes 0 bis 4)
$fragen = [
    'AB01',
    'AB02',
    'AB03',
    'AB04',
    'AB05'
];
question($fragen[$nummer]);
 
// Knopf auf der Seite einbinden - aber nur, wenn noch Fragen übrigs sind
if ($nummer < count($fragen) - 1) {
    $htmlButton = buttonDataCode('Nächste Frage', 'nochmal');
    html('<div style="margin: 1em 0; text-align: center;">'.$htmlButton.'</div>');
}
de/create/functions/buttondatacode.txt · Zuletzt geändert: 23.04.2023 14:24 von service
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki