[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
yform mit community mehrere Formulare - 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/
mmh
Beiträge: 118
Registriert: 17. Apr 2012, 13:20

yform mit community mehrere Formulare

25. Jul 2016, 14:35

Hallo,
wurschtle mich gerade in das Communityaddon samt yForm und habe 1-2 Problemchen.
Ich habe ein sehr umfangreiches Benutzerprofil mit mehreren Adressen (Privat, Shop, Club, etc.) und vielem mehr.

Um das ganze übersichtlicher zu gestalten habe ich dem yForm Modul einen Accordion Container verpasst. So kann ich verschiedene Bereiche in verschiedenen Accordions gliedern. Problem ist nun, wenn ich das Formular Modul mehrfach positioniere, führt er beim klick auf "Absenden" ALLE Formulare aus. Er validiert also die Passwort Abfrage aus dem ersten Accordion, verschickt die Mail die als Aktion im 2. Accordion hinterlegt ist und mahnt das leere Feld im dritten Accordion an.

Wie bekomme ich es geregelt, dass der Absenden Butten immer nur das entsprechende Formular ausführt?

Tausend Danke

Max Smily
Beiträge: 29
Registriert: 13. Aug 2006, 14:51

Re: yform mit community mehrere Formulare

25. Jul 2016, 19:46

Ohh, gute Frage. Das interessiert mich auch schon lange.

Habe dieses Problem bei xform gehabt (in Redaxo 4.x) und auch keine zufriedenstellende Lösung gefunden.

Meine Behelfslösung sah bisher so aus:

1. ich verwende die php-Schreibweise für die Formulare, nicht die Pipe-Variante
2. als Formular-Action verwende ich benutzerdefinierte Funktionen (jeweils eine andere je Formularblock)
3. Jedes Formular enthält ein verstecktes Formularfeld, z.B. eine Text-Input namens "action", das mit CSS auf hidden gestellt ist. Als Value ist ein Keyword eingetragen, z.B. "addAddress"
4. an die benutzerdefinierte Funktion wird das Array $param übergeben, welches unter anderem alle Inhalte der Formularfelder enthält, also auch das "action"-Feld
5. jetzt kann ich in der benutzerdefinierten Funktion mit if($action=="addAddress") ein Block öffnen, der nur ausgeführt wird, wenn das richtige Formular abgesendet wurde.

Obwohl alle Formulare abgesendet werden, sendet nur das aktive Formular seine Feldwerte über $param mit. Auf diese Weise kann man steuern, welche Funktion tatsächlich etwas ausführt.

Allerdings hab ich es noch nicht geschafft, die Validierungsfunktionen der Nebenformulare zu deaktivieren. Die werden trotzdem ausgeführt. Vermutlich muss man hier auch benutzerdefinierte Funktionen verwenden.

Wenn es elegantere Lösungen gibt, dann her damit.

Viele Grüße
Max Smily

ceekay82
Beiträge: 54
Registriert: 5. Aug 2008, 12:55

Re: yform mit community mehrere Formulare

27. Jul 2016, 14:00

Hallo,

versuche mal jedem Formular einen eigenen Namen mitzugeben mit

Code: Alles auswählen

objparams|form_id|form_privat
objparams|form_id|form_club
...
wichtig ist glaube ich noch zu wissen, dass

Code: Alles auswählen

objparams|real_field_names|true
in dem Fall nicht verwendet wird.

Probier das bitte so mal aus.

Viele Grüße
Christian
Für mehr Selbstständigkeit an PCs:
Frage + Google = Antwort

mmh
Beiträge: 118
Registriert: 17. Apr 2012, 13:20

Re: yform mit community mehrere Formulare

27. Jul 2016, 14:27

Hallo Christian,
danke dir, werde ich testen.
Was macht

Code: Alles auswählen

objparams|real_field_names|true
eigentlich? Konnte nichts dazu finden.

Und gleich noch eine kurze Frage zu

Code: Alles auswählen

 ycom_auth_load_user|userinfo|feld_1,feld_2,etc
Ich hab' hier immer die Felder angehängt die geladen werden sollen. Wenn die Reihenfolge nicht stimmt gibt das aber durcheinander. Jetzt hab' ich festgestellt, dass es auch ohne die Felder funktioniert. Spricht was dage einfach nur

Code: Alles auswählen

ycom_auth_load_user|userinfo|
zu nutzen

Danke
Marco

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

Re: yform mit community mehrere Formulare

27. Jul 2016, 22:40

Hi Marco,

es git inzwischen eine recht umfangreiche Doku direkt in YForm. Noch nicht ganz komplett, aber das Wichtigste ist drin.

Zu Deiner Frage nach real_field_names hier der Direktlink zu Github:
https://github.com/yakamara/redaxo_yfor ... -feldnamen

Bei ycom_auth_load_user musst Du meines Wissens Felder auswählen, wenn Du deren Daten weiter verarbeiten willst, z.B. anzeigen oder mit E-Mail versenden.

mmh
Beiträge: 118
Registriert: 17. Apr 2012, 13:20

Re: yform mit community mehrere Formulare

28. Jul 2016, 12:41

Hallo Peter,
danke dir. Die Doku habe ich auch immer paralell auf, wie du sagst relativ umfangreich ;-)
Ich habe jetzt oben ycom_auth_load_user stehen, bekomme die Felder angezeigt und kann sie bearbeiten. Passt für mich scheinbar alles so.

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