Ergebnis 1 bis 22 von 22

Thema: Probleme mit einem Formular im Akkordeon

  1. #1
    Contao-Nutzer
    Registriert seit
    18.02.2010.
    Beiträge
    8

    Standard Probleme mit einem Formular im Akkordeon

    Hallo TYPOlight-Community,
    ich beschäftige mich nun schon eine ganze Weile mit der Problematik eines Formulars in einem Accordion. Im Forum habe ich dazu bisher nichts finden können.

    Folgendes Szenario:
    Am Ende einer Seite habe ich ein Akkordion, in dem ein Formular liegt. Das Akkordeon ist erst geschlossen, das Formular wird also erst nach dem Klicken sichtbar.

    Wenn der Benutzer jetzt das Formular nicht korrekt ausfüllt, wird ja das Formular nicht abgeschickt und der Fehler im Formular hervorgehoben. Das Problem ist, dass das Accordion dann aber wieder geschlossen ist und der Benutzer den Fehler nicht sieht, also denkt, das Absenden hat funktioniert.

    Wie schaffe ich, dass das Akkordeon nach dem Sendeversuch geöffnet bleibt? Hat jemand vielleicht ein ähnliches Problem gehabt und weiß Rat?

    Beste Grüße,
    Dennis

  2. #2
    Contao-Fan Avatar von Anke
    Registriert seit
    30.06.2009.
    Ort
    Rhein-Main-Gebiet
    Beiträge
    919

    Standard

    Da kann ich leider nicht helfen, aber in diesem Zusammenhang würde mich auch noch etwas anderes interessieren:

    Wenn ein Link aufgerufen wird mit einem Anker, der innerhalb eines Akkordeons sitzt, bleibt dieses Akkordeon ebenfalls geschlossen. Ist es durch Übergabe einer display:true-Anweisung im Link möglich, gezielt das verankerte Akkordeon zu öffnen? Falls ja, würde mir jemand helfen? Meine JS-Kenntnisse reichen da leider nicht aus ...

    VG
    Anke

  3. #3
    Contao-Fan Avatar von Wichteldesign
    Registriert seit
    23.06.2009.
    Ort
    Nürtingen
    Beiträge
    353

    Standard

    Hab gerade das gleiche Problem und absolut keine Idee wie ich es beheben könnte. Freue mich über jeden Denkansatz.

    Wichtel
    Besten Gruß, Felix Peters
    Wichteldesign // Github // @wichteldesign // @el_wichtel

  4. #4
    Gesperrt
    Registriert seit
    03.04.2010.
    Ort
    Mosbach
    Beiträge
    338

    Standard

    Erstellt ein Hidden-Feld im Formular. Bei Feldname id eintragen und bei Standardwert eure Togglernummer (Hier im Bsp. bei mir die 3, also der 4. Toggler). Danach in die moo_accordion.tpl (vorzugsweise aus euren eigenen templates-Ordner) und vor der Zeile window.addEvent folgendes eintragen:

    HTML-Code:
    var hiddenID = "<?php echo $_POST['id']; ?>";
    if (hiddenID == 3) {
    	var newDisplay = 3;
    } else {
    	var newDisplay = 0;
    }
    Dann noch die Zeile

    HTML-Code:
    display: true
    mit

    HTML-Code:
    display: newDisplay
    austauschen oder eben ändern.

    Zu beachten ist noch, daß hier im Bsp. das Formular per POST gesendet wird. Sicherlich geht das auch mit GET, entsprechend dann $_GET nehmen.

    PS: Heißt das überhaupt Toggler?


    Tante Edit meint noch:
    Vorteil ist hier noch, daß man zusätzlich noch angeben kann, welcher Toggler beim laden der Seite geöffnet werden soll. Dazu einfach bei 'var newDisplay = 0;' entsprechend die Nummer eintragen. Sollen alle Toggler geschlossen sein, dann ein -1 eintragen.

    Mit Ankern hat das hier allerdings wenig zu tun und ich beziehe mich mal auf die ursprüngliche Thread-Frage.


    cu.Oden
    Geändert von Oden (11.04.2010 um 07:55 Uhr)

  5. #5
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.557
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo,

    ergänzend zu Oden hier meine Lösung mit der Abfragemethode GET:

    Im Template "moo_accordion.tpl" ("/templates") folgende Zeile einfügen:
    PHP-Code:
    display: <?php $aid $this->Input->get('accid'); if ($aid == '') { echo "false"; } else { echo $aid; } ?>,
    Die Verlinkung des betreffenden Akkordeon-Elements erfolgt dann mittels "http://www.domain.tld/alias-der-accordeon-seite.html/?accid=1" (sofern man z.B. auf das zweite Element verlinken möchte). Die Zählung der Akkordeon-Elemente beginnt dabei immer bei Null!

    Nebenbei verwende ich für die Abfrage des GET-Parameters die entsprechende Funktion des TYPOlight Frameworks
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  6. #6
    Gesperrt
    Registriert seit
    03.04.2010.
    Ort
    Mosbach
    Beiträge
    338

    Standard

    Danke! Sieht auch gleich professioneller aus. :-)
    Aber ich bin ja auch erst eine Woche bei TL, vielleicht wird ja mehr draus.


    cu.Oden

  7. #7
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.557
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Zitat Zitat von Oden Beitrag anzeigen
    Danke! Sieht auch gleich professioneller aus. :-)
    Aber ich bin ja auch erst eine Woche bei TL, vielleicht wird ja mehr draus.
    Du musst Dich dafür hier nicht rechtfertigen! So wie ich das sehe, bist Du eh schon recht aktiv und professionell mit TYPOlight unterwegs...

    Nichtsdestotrotz bleibt allerdings immer noch die offene Frage des OP. Dafür kenn ich jetzt auf die Schnelle auch keine zufriedenstellende Lösung - sofern es diesbezüglich überhaupt was Gscheides gibt!
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  8. #8
    Gesperrt
    Registriert seit
    03.04.2010.
    Ort
    Mosbach
    Beiträge
    338

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Du musst Dich dafür hier nicht rechtfertigen! So wie ich das sehe, bist Du eh schon recht aktiv und professionell mit TYPOlight unterwegs...
    Das professionell nimm bitte raus. Soweit bin ich lange nicht.

    Nichtsdestotrotz bleibt allerdings immer noch die offene Frage des OP. Dafür kenn ich jetzt auf die Schnelle auch keine zufriedenstellende Lösung - sofern es diesbezüglich überhaupt was Gscheides gibt!
    Also ich finde die schon beantwortet. Einzig das mit den Ankern geht noch nicht, was ja aber auch nicht das Thema des OP war.


    cu.Oden

  9. #9
    Contao-Fan Avatar von Wichteldesign
    Registriert seit
    23.06.2009.
    Ort
    Nürtingen
    Beiträge
    353

    Standard

    Danke für die Antwort. Werde es gleich mal ausprobieren.
    Besten Gruß, Felix Peters
    Wichteldesign // Github // @wichteldesign // @el_wichtel

  10. #10
    Contao-Nutzer
    Registriert seit
    07.10.2009.
    Beiträge
    21

    Standard

    Hallo,

    ich habe noch eine Frage: bei mir scheint der Teil (<?php echo $_POST['id'] nicht zu funktionieren. Irgendwie wird das Value des Hiddenfields nicht übermittelt.
    Weis hierzu jemand eine Lösung?

  11. #11
    Contao-Urgestein Avatar von ways2web
    Registriert seit
    23.03.2010.
    Ort
    Berlin
    Beiträge
    1.698
    User beschenken
    Wunschliste

    Frage

    Guten Morgen Community

    irgendwo verpasse ich die lösung, obwohl diese wohl hier zu finden sein soll
    vielleicht bin ich auch zu lange wach...

    wäre jemand so herzensgut das zusammenzufassen, dass sogar ich es schaffe das ganze nachzuvollziehen

    Mein Anliegen:

    1. Ausgewählte Accordions (nicht alle) bei Aufruf erst geschlossen !

    2. Ausgewähltes Accordion bleibt geöffnet, wenn bei Formulareingabe fehler gemacht wurden.

    3. Dem Toggler nen active status vergeben, damit man für den Zustand verschiedene Grafiken zuweisen kann (z.b. plus minus symbol)

    da ich diese thema schon mehr als einmal bemerkt habe würde ich das ganze wie immer auch als Tutorial verfassen, sobald ich es mit eurer hilfe lösen konnte!

    Viele grüße
    ways
    Geändert von ways2web (20.01.2011 um 07:55 Uhr) Grund: erweitert

  12. #12
    Contao-Yoda Avatar von MacKP
    Registriert seit
    15.06.2009.
    Ort
    Duisburg
    Beiträge
    13.292
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hallo ways2web,
    ist jetzt keine direkte Antwort.. aber: Zu jedem dieser Themen gibts schon ein paar Threads. Bemüh da doch bitte mal die Suche ;-)

    Viele Grüße
    Contao Pool | C-C-A | MetaModels | [Internetseite -> Mediendepot Ruhr]
    [Arbeitet bei -> Paus Design & Medien]
    "I can EXPLAIN it to you, but I can't UNDERSTAND it for you."

  13. #13
    Contao-Urgestein Avatar von ways2web
    Registriert seit
    23.03.2010.
    Ort
    Berlin
    Beiträge
    1.698
    User beschenken
    Wunschliste

    Standard

    das hab ich natürlich nicht unterlassen

    und war auch teiwleise erfolgreich, nur mit den formularen war ich nich ganz erfolgreich, bzw konnte ich die Lösungsansätze nich erweitern...
    mit der Ergänzung von xchs konnte ich nun das accordion geöffnet halten, bei einer fehlermeldung
    (display-wert , in zusammenhang mit einem hidden field).

    Das Problem ist nun, dass mein Accordion aber komischerweise geschlossen bleibt, wenn der Eintrag fehlerfrei erstellt wurde um den Systemhinweis zu erhalten
    (Ihr Kommentar wurde hinzugefügt und wird nach redaktioneller Prüfung veröffentlicht.)

    nun ist also dieser nicht zu sehen, fehlermeldung hinegegen schon

    liebe grüße
    Olli
    Geändert von ways2web (21.01.2011 um 02:37 Uhr) Grund: erweitert

  14. #14
    Contao-Urgestein Avatar von ways2web
    Registriert seit
    23.03.2010.
    Ort
    Berlin
    Beiträge
    1.698
    User beschenken
    Wunschliste

    Standard [Gelöst] - vorerst :)

    so, mein Kollege hat mir das gemacht.

    ich hab jetzt ne moo_accordion.tpl, die alles macht was ich wünschte...
    Alles in Verbindung mit dem kommentarsystem (ce_comments.tpl).
    Grundlage war das Tutorial von Psi: Accordion_extended

    sollte das form weit unten in der seite sitzen gibts auch sowas wie nen Anchor-Sprung zu den p.error und p.confirm ( window.scrollTo) + Rücksicht auf das oncomplete vom accordion.

    und wie immer, wenn mir geholfen wird.. sollen auch andere davon profitieren können, denen es wir mir an mootool KnowHow fehlt. Da es im Forumbereich "Modifizierte Templates" schon ein template zu diesem Thema gibt, hänge ich es hier mit ran..

    Demolink gibts per PM, da ich mein Kommentarbereich nicht zuspammen lassen möchte

    PS: bei Fehlern oder optimierungsvorschlägen... ihr findet mich im forum.. oder irc.

    Gute Nacht
    Angehängte Dateien Angehängte Dateien
    Geändert von ways2web (01.06.2011 um 12:21 Uhr)

  15. #15
    Contao-Nutzer Avatar von endlezZ
    Registriert seit
    13.08.2010.
    Ort
    Paderborn
    Beiträge
    224

    Standard

    Hallo,
    habe die Beiträge mal überfolgen. Habe ähnlioches vor und würde gerne euch bzw. den Threadersteller fragen, wie er das Formular in sein Accordion bekommen hat...?

    Also ich habe mir ein Formular mit einigen Textfeldern und Checkboxen gemacht. Den Code für das Accordion habe ich auch schon geschrieben, funktioniert soweit perfekt...

    Nur die große Frage ist jetzt wie ich z.b. die ersten beiden Eingabefelder meines Formulares auf die erste Seite des Accordions bekomme, die nächsten 3 Eingabefelder dann z.B. auf die zweite Seite des Akkordions usw...?

    Wirklich zerstückeln kann man es ja nicht, da sich in $this->fields der komplette HTML Code befindet. Ich habe zwar für jedes Eingabefeld eine Klasse (unter dem Formulargenerator) angegeben, trotzdem bin ich ratlos.

    Wie löse ich mein Problem??

    Danke..

  16. #16
    Contao-Nutzer
    Registriert seit
    28.01.2010.
    Ort
    Dortmund
    Beiträge
    45

    Standard

    Zitat Zitat von Oskar Beitrag anzeigen
    Hallo,

    ich habe noch eine Frage: bei mir scheint der Teil (<?php echo $_POST['id'] nicht zu funktionieren. Irgendwie wird das Value des Hiddenfields nicht übermittelt.
    Weis hierzu jemand eine Lösung?
    Ich habe das gleiche Problem wie Oskar. Der Wert wird übermittelt, allerdings nicht in $_POST['id'] sondern in $HTTP_POST_VARS['id']. Die schaffe ich leider nicht auszulesen was unter umständen an der Einstellung Register globals = off liegen könnte.

    Hat jemand die Lösung oder einen Tipp?

    Danke! Der PHP-Experte

  17. #17
    Contao-Nutzer
    Registriert seit
    28.01.2010.
    Ort
    Dortmund
    Beiträge
    45

    Standard

    @oskar:

    setze <?php echo $GLOBALS['HTTP_POST_VARS']['id']; ?> anstatt <?php echo $_POST['id']; ?> ein, dann funktioniert es.

  18. #18
    Contao-Nutzer Avatar von worxer
    Registriert seit
    29.04.2011.
    Beiträge
    49

    Standard

    Das angehängte Template von ways2web funktioniert super. Vielen Dank dafür!
    Allerdings habe ich 2 Formulare auf einer Seite. Je ein Formular ist in einem Einzelelement-Akkordeon eingebunden. Wird das erste Formular falsch ausgefüllt, springt die Seite direkt zum offenen (ersten) Fehler-Formular. Wie gewünscht. Wird jedoch das zweite falsch ausgefüllt, führt ein Reload der Seite wieder zum ersten offenen Formular. Das zweite bleibt verdeckt. Wie kann ich erreichen, dass das zweite bei einer Fehlermeldung geöffnet wird?

  19. #19
    Contao-Nutzer
    Registriert seit
    04.08.2011.
    Beiträge
    4

    Standard

    Zitat Zitat von xchs Beitrag anzeigen
    Hallo,

    ergänzend zu Oden hier meine Lösung mit der Abfragemethode GET:

    Im Template "moo_accordion.tpl" ("/templates") folgende Zeile einfügen:
    PHP-Code:
    display: <?php $aid $this->Input->get('accid'); if ($aid == '') { echo "false"; } else { echo $aid; } ?>,
    Die Verlinkung des betreffenden Akkordeon-Elements erfolgt dann mittels "http://www.domain.tld/alias-der-accordeon-seite.html/?accid=1" (sofern man z.B. auf das zweite Element verlinken möchte). Die Zählung der Akkordeon-Elemente beginnt dabei immer bei Null!
    Funktioniert, auch mit Post-Methode aber
    Zitat Zitat von xchs Beitrag anzeigen
    Nebenbei verwende ich für die Abfrage des GET-Parameters die entsprechende Funktion des TYPOlight Frameworks
    Das ist ungünstig, wenn jemand nach einer Falscheingabe (also wenn accid einen Wert bekommt) während der selben Browser-Sitzung nocheinmal das Formular neu aufruft (also ohne jegliche GET oder POST-Daten) das Formular trotzdem ausgeklappt ist. Die Typolight-Funktion scheint sich das ungewollt zu "merken", zumindest bei der Post-Methode. Deshalb verwende ich statt
    PHP-Code:
    $this->Input->post('accid'
    das klassische
    PHP-Code:
    $_POST['accid'
    , dann funktioniert's perfekt.

  20. #20
    Administrator Avatar von xchs
    Registriert seit
    19.06.2009.
    Beiträge
    14.557
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Nun, jeder nach seiner Façon.

    Ich bleibe bei den Methoden, die mir das Contao Framework bietet.
    Contao Community Administrator

    [Unterstützungsmöglichkeiten]

  21. #21
    Contao-Nutzer Avatar von uliverse
    Registriert seit
    21.10.2009.
    Ort
    Hainichen
    Beiträge
    231
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Also ich krieg es mit keiner der beschriebenen Methoden hin. Mein Formular klappt bei Falscheingabe immer zu.
    • HiddenField mit
    • id und Standardwert eingefügt ("0", da ich nur ein Akkordeon-Tab habe, richtig?)
    • Methode: POST
    • Template: das von ways2web bzw. auch das von Oden.

    --> Formular geht trotzdem zu

    Auch der Tipp von Xchs (und entsprechend GET) bringt mich nicht weiter, dann werde ich sofort auf die "Danke"-Seite geleitet bei Falscheingabe...

    Liegt es an der Version von MooTools? Mir fällt auf, dass das moo_accordion Template in neueren Versionen um einiges umfangreicher ist als das von ways2web.
    Was mache ich falsch?

  22. #22
    Contao-Nutzer
    Registriert seit
    18.04.2011.
    Beiträge
    75

    Standard

    Gibt es eine aktuell funktionierende Lösung? Mir wäre auch geholfen

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. Antworten: 12
    Letzter Beitrag: 31.01.2011, 07:46
  2. Probleme mit Akkordeon bzw. accordion
    Von flexx im Forum Allgemeine Inhaltselemente
    Antworten: 13
    Letzter Beitrag: 11.03.2010, 15:01
  3. Problem mit Formular im Akkordeon nach 2.8 Update
    Von Askraba im Forum Layout / Templates / Holy Grail
    Antworten: 5
    Letzter Beitrag: 21.02.2010, 23:37
  4. erhebliche Probleme mit einem Kunden - Was machen?
    Von Wichteldesign im Forum Off Topic
    Antworten: 5
    Letzter Beitrag: 10.02.2010, 23:25
  5. [erledigt] Probleme mit Akkordeon / mootools
    Von osterwaldi im Forum Allgemeine Inhaltselemente
    Antworten: 4
    Letzter Beitrag: 24.08.2009, 17:26

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •