Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:create:functions:registervariable [03.08.2017 13:13] – [Verwendung mit isset()] adminde:create:functions:registervariable [03.10.2023 08:38] (aktuell) – [registerVariable()] admin
Zeile 7: Zeile 7:
   * //VariablenName//\\ Ein String (in Anführungszeichen) mit dem Namen der Variable. Es darf nicht die Variable selbst sein (z.B. ''$item''), ein String mit dem Namen der Variable (z.B. 'item').   * //VariablenName//\\ Ein String (in Anführungszeichen) mit dem Namen der Variable. Es darf nicht die Variable selbst sein (z.B. ''$item''), ein String mit dem Namen der Variable (z.B. 'item').
  
 +**Wichtig:** Änderungen an Variablen werden nur dann in spätere PHP-Codes übernommen, wenn der entsprechende PHP-Code bis zum Ende läuft. Befehle wie ''repeatPage()'', ''goToPage()'' oder ''pageStop()'' unterbrechen die Ausführung, sodass die Änderungen nicht übernommen werden. Bitte beachten Sie, dass dieses Verhalten nach Funktion und Programmversion variiert. Die Verwendung [[:de:create:questions:internal|interner Variablen]] ist hier eine robuste Alternative.
  
 ===== Verwendung mit isset() ===== ===== Verwendung mit isset() =====
Zeile 12: Zeile 13:
 Viele Beispiele in der Anleitung verwenden ''registerVariable()'' zusammen mit der PHP-Funktion ''[[http://php.net/manual/de/function.isset.php|isset()]]'', um eine mehrfache [[de:create:randomization|Randomisierung]] bzw. [[:de:create:rotation|Rotation]] zu vermeiden -- zum Beispiel wenn die Fragebogen-Seite nach dem "Weiter" erneut angezeigt wird, weil noch Antworten fehlen. Viele Beispiele in der Anleitung verwenden ''registerVariable()'' zusammen mit der PHP-Funktion ''[[http://php.net/manual/de/function.isset.php|isset()]]'', um eine mehrfache [[de:create:randomization|Randomisierung]] bzw. [[:de:create:rotation|Rotation]] zu vermeiden -- zum Beispiel wenn die Fragebogen-Seite nach dem "Weiter" erneut angezeigt wird, weil noch Antworten fehlen.
  
-Die Funktion ''isset()'' ermittelt, ob eine PHP-Variable bereits vorher definiert wurde. Damit kann man vermeiden, dass z.B. eine Liste neu erstellt udn gemischt wird, wenn sie schon vorher definiert wurde.+Die Funktion ''isset()'' ermittelt, ob eine PHP-Variable bereits vorher definiert wurde. Damit kann man vermeiden, dass z.B. eine Liste neu erstellt und gemischt wird, wenn sie schon vorher definiert wurde.
  
 **Wichtig:** Der Inhalt der Variable wird __nicht__ im Datensatz gespeichert und die PHP-Variable wird beim Erreichen der "letzten Seite" (Abschluss des Fragebogens) gelöscht. Falls der Inhalt der Variable (z.B. die Reihenfolge einer Rotation) für die Auswertung relevant ist, muss man sie mittels ''[[:de:create:functions:put]]'' explizit im Datensatz speichern. **Wichtig:** Der Inhalt der Variable wird __nicht__ im Datensatz gespeichert und die PHP-Variable wird beim Erreichen der "letzten Seite" (Abschluss des Fragebogens) gelöscht. Falls der Inhalt der Variable (z.B. die Reihenfolge einer Rotation) für die Auswertung relevant ist, muss man sie mittels ''[[:de:create:functions:put]]'' explizit im Datensatz speichern.
  
 **Wichtig:** Bei der Verwendung von ''registerVariable()'' muss man sich bewusst sein, dass die registrierte Variable für das komplette restliche Interview definiert ist. Wenn man also die Kombination ''registerVariable()'' und ''isset()'' nochmal an anderer Stelle verwenden möchte, sollte man dafür tunlicht eine __andere Bezeichnung für die Variable__ wählen. Zum Beispiel ''$itemsAB'' im ersten PHP-Code und ''$itemsBC'' im zweiten. **Wichtig:** Bei der Verwendung von ''registerVariable()'' muss man sich bewusst sein, dass die registrierte Variable für das komplette restliche Interview definiert ist. Wenn man also die Kombination ''registerVariable()'' und ''isset()'' nochmal an anderer Stelle verwenden möchte, sollte man dafür tunlicht eine __andere Bezeichnung für die Variable__ wählen. Zum Beispiel ''$itemsAB'' im ersten PHP-Code und ''$itemsBC'' im zweiten.
 +
  
 Hier ein Beispiel, bei welchem die Items einer Frage gezielt gemischt werden: Hier ein Beispiel, bei welchem die Items einer Frage gezielt gemischt werden:
Zeile 54: Zeile 56:
 question('AB01', $itemliste); question('AB01', $itemliste);
 // Die Variable $itemliste registrieren // Die Variable $itemliste registrieren
-registerVariable('itemliste');+registerVariable($itemliste);
 </code> </code>
  
Zeile 77: Zeile 79:
   $gruppe = 2;   $gruppe = 2;
 } }
-registerVariable('gruppe');+registerVariable($gruppe);
 </code> </code>
  
Zeile 113: Zeile 115:
 ); );
 shuffle($fragen); shuffle($fragen);
-variableRegister('fragen');+registerVariable($fragen);
 </code> </code>
  
de/create/functions/registervariable.1501758830.txt.gz · Zuletzt geändert: 03.08.2017 13:13 von admin
 
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