Optionale Einstellungen von MPForm << ^ MPForm Hilfeseiten ^
Häufig gestellte Fragen zu MPForm
- Frage: Nun wird LEPTON ja bereits mit dem Form-Modul geliefert, wozu sollte man dann eigentlich das MPForm installieren?
- Antwort: Sie sollten das Modul nur installieren, wenn Sie an die Grenzen
der Möglichkeiten des Form-Moduls gestoßen sind. MPForm bietet mehr Möglichkeiten,
erfordert daher aber auch einen höheren Einarbeitungsaufwand.
- Frage: Mein Formular enthält ein Datumsfeld. Wenn ich aber das Kalender-Symbol anklicke, wird kein Kalender angezeigt?
- Antwort: Der verwendete Javascript-Kalender enthält in manchen Versionen
eine Macke:
Falls im Mainbody-Style absolute Positionierung und Z-Index verwendet werden, wird der Kalender
hinter statt vor dem Hauptfenster angezeigt. Sie müssen also die Datei screen.css Ihres
Templates entsprechend anpassen und alles wird gut.
- Frage: Wie kann ich eine Einverständniserklärung mit längerem Text (oder mit einem Link auf meine AGB) in das Formular integrieren?
- Antwort: Für beliebigen HTML-Text können Sie ein HTML-Feld verwenden.
Wenn Sie darunter ein einzelnes Kontrollkästchen als Pflichtfeld setzen, kann der Benutzer
sein Formular nur abschicken, nachdem er Ihren Bedingungen zugestimmt hat.
- Frage: Ist es möglich, ein Feld dynamisch in Abhängigkeit von irgendwelchen Bedingungen vorzubelegen?
- Antwort: Ja, Sie müssen dazu vor der Generierung der Seite die richtige
SESSION-Variable setzen:
- Bekommen Sie heraus, wie die ID des Feldes und wie die section_id des Formulars lauten (das steht z.B. im Backend in den Feldeigenschaften)
- Ihren Code schreiben Sie in der Datei private.php in die Funktion
private_function_before_new_form.
Um das Feld mit der ID 42 im Formular im Abschnitt 24 mit "Standardwert" vorzubelegen also z.B.
if ($section_id == 24) { $_SESSION['field42'] = "Standardwert"; return true; }
Handelt es sich um ein Multi-Auswahlfeld, so schreiben Sie z.B.:
$_SESSION['field42']=array('eins','zwei'); - Frage: Ich bekomme folgende Fehlermeldung: Fatal error: Call to a member function numRows() on a non-object in \modules\mpform\evalform.php on line 533 - woran kann das liegen?
- Antwort: Wahrscheinlich haben Sie Namenserweiterung für die
Ergebnistabelle geändert, nachdem Sie bereits ein Formularfeld angelegt hatten.
Ab Version 1.2 sollte dieses Problem nicht mehr auftreten, aber wenn Sie die Namenserweiterung
unter einer früheren Version von mpform geändert haben, nachdem bereits Felder
angelegt wurden, kann es helfen, einfach im Backend die allgemeinen Optionen aufzurufen
und erneut zu speichern. Das sollte mpform dazu veranlassen über die vorhandenen Felder
zu iterieren und die Ergebnistabelle entsprechend anzupassen.