WBCE CMS – Way Better Content Editing.
You are not logged in.
Pages: 1
Hallo,
ich komme mit dieser private.php nicht klar.
Ich denke das Vorhaben ist für den Bereich
private_function_before_new_form($section_id)
Habe ein ein mehrseitiges Formular.
1. Formular Section ID 220
Name: FIELD37
Der Wert FIELD37 soll im 2 Formular (Section ID 224) eingebettet werden.
(z.B. als Formularfeld Überschrift)
Beide Formulare sind als Fieldset (Start/Ende) angelegt.
Diese Beispiele bringen mich nicht drauf und könnte einen schubser gebrauchen.
/*
// example how to use: put a predefined value into one of the fields
if ($section_id == 4526) {
$_SESSION['mpf']['field136'] = $_SESSION['EMAIL'];
return true;
}
// another example how to use: again, pre-fill a field
if ($section_id == 4575) {
$_SESSION['mpf']['field4568'] = '';
if (isset($_SERVER['HTTP_REFERER'])) {
$_SESSION['mpf']['field4568'] = $_SERVER['HTTP_REFERER'];
}
return true;
}
*/
VG wasi
Offline
Überschriften innerhalb von mpform dynamisch, anders als im Backend hinterlegt, vorzubelegen, ist derzeit nicht vorgesehen.
Was du machen kannst, wäre innerhalb einer Code2 Section auf der 2. Seite, oberhalb der mpform Section, auf die Session Variablen zuzugreifen, um eine Überschrift oberhalb des Formulars auszugeben.
Ich vermute, dass auch nichts dagegen sprechen würde, andere Feldtypen vorzubelegen. Bisher ist das halt nur für Eingabefelder vorgesehen und es bräuchte eine Codeänderung, um das zu verallgemeinern.
Offline
1. Frage:
Was du machen kannst, wäre innerhalb einer Code2 Section auf der 2. Seite, oberhalb der mpform Section, auf die Session Variablen zuzugreifen, um eine Überschrift oberhalb des Formulars auszugeben.
Wenn ich mich hier einklinken darf: Ich hatte auch bereits an der Frage herumgeknobelt und versucht, wie in der private.php beschrieben, an $_SESSION['mpf'] heranzukommen. Dieser Wert scheint aber gar nicht gesetzt zu werden?
Es gibt so weit ich sehe nur $_SESSION[html_data_user$submission_id], also z.B. $_session[html_data_userrzgsh3cp], da steht aber nicht der reine Rückgabewert drin, sondern der HTML-Code inkl. Formularfeldbeschreibung, also z.b.
<div class="mpform_field_2" mpform_field_textfield=""><b>test1:</b> Max Mustermann</div>
Wie/Wo genau kommt man also an die zwischengespeicherten Formularwerte?
2. Frage:
Überschriften innerhalb von mpform dynamisch, anders als im Backend hinterlegt, vorzubelegen, ist derzeit nicht vorgesehen.
Aber es gibt doch den Formularfeldtyp Überschrift, ließe sich der nicht doch dynamisch befüllen, so man denn an die Werte herankäme?
Last edited by florian (26.07.2024 06:32:36)
Sorgen sind wie Nudeln: man macht sich meist zu viele.
Offline
Hallo Florian,
1. Frage:
[...]
Wie/Wo genau kommt man also an die zwischengespeicherten Formularwerte?
ehrlich gesagt hatte ich mich mit den privaten Funktionen seither nicht so sehr auseinandergesetzt. Das war halt in dem Modul schon drin, als ich begonnen hatte, es weiter zu pflegen. Gesetzt werden sollten die Formularwerte eigentlich hier in der evalform.php aber vermutlich schießt da das Aufräumen am Ende der Datei quer. Dieses müsste man wohl für multipage-Formulare auf die letzte Formularseite verschieben
2. Frage:
Überschriften innerhalb von mpform dynamisch, anders als im Backend hinterlegt, vorzubelegen, ist derzeit nicht vorgesehen.
Aber es gibt doch den Formularfeldtyp Überschrift, ließe sich der nicht doch dynamisch befüllen, so man denn an die Werte herankäme?
ja, wenn man für den Feldtyp "Überschrift" - oder vielleicht allgemein für alle Feldtypen, die nicht vorher schon behandelt wurden, in der paintform.php eine solche Vorbelegung vorsieht. Bisher ist das nur für EIngabefelder vorgesehen, in die der Besucher tatsächlich Daten eintragen kann, aber nicht für sozusagen "statische" html-Elemente im Formular vorgesehen.
Also zumindest bzgl. Frage 1 sollte ich mir das mpform wohl mal wieder zur Brust nehmen, und wenn ich dann schon dran bin, auch den Aspekt der 2. Frage mit bearbeiten. Ein paar andere Kleinigkeiten hätte ich sowieso noch, die seither liegen geblieben sind.
PS: die private.php erweckt leicht den Eindruck, dass man damit super flexibel alles Mögliche realisieren könnte - aber letztendlich ist man in den privaten Funktionen größtenteils auf die übergebenen Parameter angewiesen, so dass sich das ziemlich genau auf die in den Beispielen genannte Use-Cases reduziert - und wenn die Vorbelegung von $_SESSION['mpf'] nicht wie vorgesehen funktioniert, ist noch nicht mal das realisierbar :-(
Offline
Pages: 1