[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
yform - Ergebnis der Validation - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
zockerwurf
Beiträge: 23
Registriert: 11. Aug 2016, 18:09

yform - Ergebnis der Validation

19. Jan 2017, 12:33

Hallo Leute

Ich probiere mich aktuell an einem Formular mit yform. Konkret habe ich ein Modul, welches den PHP-Block ausgibt. In diesem PHP-Block habe ich zum Beispiel folgenden Code:

Code: Alles auswählen

$yform = new rex_yform();
$yform->setObjectparams('form_action', rex_getUrl(REX_ARTICLE_ID, REX_CLANG_ID));
$yform->setObjectparams('submit_btn_show',0);

$yform->setValueField('text', array("prename",'Feld 1'));
if ($button == 1)
$yform->setValidateField('empty', 'Fehler1'));

$yform->setValueField('text', array("prename2",'Feld 2'));
if ($button == 1)
$yform->setValidateField('empty', array("prename2", 'Fehler2'));

$yform->setValueField('text', array("prename3",'Feld 3'));
if ($button == 1)
$yform->setValidateField('empty', array("prename3",'Fehler3'));

$yform->setValueField('html', array("button", '<button type="submit" class="btn btn-primary" name="button1" value="1">Abschicken</button>'));
$yform->setValueField('html', array("button", '<button type="submit" class="btn btn-primary" name="button1" value="2">Senden</button>'));

$yform->setActionField('html', array("Daten gespeichert"));

echo $yform->getForm();

Zugegeben, der Code mag nicht besonders viel Sinn machen, bin hier aber was am Ausprobieren für etwas grösseres.

Ich möchte in diesem Code jetzt zusätzlich wissen, ob die Validation erfolgreich war oder nicht. Aktuell wird ja nur verglichen, welcher Button gedrückt wurde [if ($button == 1)], ich möchte dies jedoch noch mit der Validation koppeln. In den yform-Klassen finde ich diese ja unter anderem auch in der $this-Variable (z.B. $this->params['warning_messages']). Da ich mich jedoch in diesem Modul (in welchem der PHP-Code ausgeführt wird) innerhalb einer anderen Klasse befinde, habe ich darauf keinen Zugriff. Hat jemand eine Idee, wie ich an diese Infos der Validation komme?

Benutzeravatar
Thomas.Blum
Entwickler
Beiträge: 5063
Registriert: 24. Aug 2004, 22:11
Wohnort: Dresden
Kontaktdaten: Website

Re: yform - Ergebnis der Validation

19. Jan 2017, 18:12

Hej,

Code: Alles auswählen

$button = rex_request('button1', 'int', 0);
vg Thomas

zockerwurf
Beiträge: 23
Registriert: 11. Aug 2016, 18:09

Re: yform - Ergebnis der Validation

20. Jan 2017, 22:43

Thomas.Blum hat geschrieben:Hej,

Code: Alles auswählen

$button = rex_request('button1', 'int', 0);
vg Thomas
Hmm.. Da bekomme ich

Code: Alles auswählen

Class does not exist "rex_yform_value_"
Und $button beinhaltet nach dem Klick entweder 1 oder 2... Aber das liefert mir ja keine Auskunft über die Validation, sprich ob allenfalls ein Feld leer gelassen wurde oder nicht?

Zurück zu „AddOns / Packages [R5]“