it-swarm.com.de

Unterschied zwischen $ form_state ['values'] und $ form_state ['input']

Kann mir bitte jemand den Unterschied zwischen diesen beiden Variablen erklären?

$form_state['values']
$form_state['input']

Optional ein Beispiel für eine Aktion, mit der sie verwendet werden. Ich frage mich besonders, ob ich Ajax in drupal Form) verwenden soll. Welche davon sollte ich in Ajax Callback verwenden, um Eingabewerte aus dem Formular abzurufen?

24
hajnyon

Der entscheidende Unterschied besteht darin, dass Sie in den meisten Fällen $ form_state ['values'] verwenden sollten. da die Daten im Array $ form_state ['input'] roh und nicht validiert sind.

$ form_state ['input'] ist nützlich für mehrstufige Formulare, vorausgesetzt, Sie sind mit dem sicheren Umgang mit Roheingaben vertraut. Weitere Informationen finden Sie unter form_builder ...

27
Anil Sagar

Wenn Sie nicht wissen, was Sie tun, $form_state['values'] es sind die verarbeiteten Formularwerte. $form_state['input'] sind die Rohdaten. Siehe den Code für form_builder: https: //api.drupal.org/api ....

1
Adi

$form_state['values'] Sollte in den meisten Fällen verwendet werden, da $form_state['input'] Den unformatierten und ungültigen Wert enthält. Auch in $form_state['values'] Werden Standardwerte übergeben, wenn das Senden des Formulars fehlschlägt, aber im Fall von $form_state['input'] Wird NULL übergeben.

0
anil kumar

In 99,9% der Fälle $form_state['values'] und $form_state['input'] sind identisch.

Achten Sie jedoch auf einen Teil der 1%, insbesondere wenn Sie das Feld date_popup verwenden, da die Eingabe in 'input', NICHT jedoch im Array 'values' gespeichert ist.

0
derrekc