Ergebnis 1 bis 9 von 9

Thema: form action immer leer

  1. #1
    Contao-Nutzer Avatar von Globe
    Registriert seit
    25.02.2010.
    Ort
    Dorsten
    Beiträge
    39

    Computer form action immer leer

    Alle Suche in der Community oder via Google zeigt mir, dass offenbar nur ich diesen Effekt habe, ich also von allen blutigen Anfängern der blutigste bin.

    Ich möchte Daten via Frontend sammeln lassen und bin so vorgegangen:

    • efg installiert
    • Formular "Test" angelegt
    • Verstecktes Feld "formalias" angelegt
    • "efg-Formulardaten speichern" ausgewählt
    • Weiterleitungsseite festgelegt und "formalias" als Alias ausgewählt
    • Textfeld "testfeld" angelegt
    • Absendebutton "Absenden" angelegt
    • Modul "Formular" mit Formular "Test" angelegt
    • Artikel mit diesem Modul gefüllt
    • Testfeld im Frontend nun vorhanden
    • Absenden aber unmöglich, weil <form action="">, also leider leer.
    • Diese Schritte bis zum Erbrechen wiederholt und variiert: Ergebnis immer gleich, auch wenn die Weiterleitungsseite den efg-Formular-Lister enthält.


    Hat mich der Alz im Griff?! Ich mach doch irgendeinen dummen Fehler, oder? Bitte helft mir! Nachgucken geht unter Vorübergehende Testseite .

    Liebe Grüße - Frank

  2. #2
    Contao-Nutzer Avatar von Globe
    Registriert seit
    25.02.2010.
    Ort
    Dorsten
    Beiträge
    39

    Beitrag

    Inzwischen habe ich auch eine komplette Neuinstallation hinter mir - aber der Effekt bleibt.

    Der Effekt: efg-Formulare lassen sich nicht via Frontend füllen, weil sie in <form action="..."> kein Ziel stehen haben.

    Statt POST habe ich nun auch mal GET verwendet: Dann immerhin kann das Formular versenden und landet auch auf der Formularlister-Seite, auf die ich es zeigen lasse. Bei GET ist auch <form action="..."> gefüllt. Aber so werden dennoch keine Daten in die Felder eingetragen.

    Im Backend kann ich die Felder sehr wohl füllen, dort werden sie auch gespeichert. Warum geht das nicht im Frontend? Ich wäre auch dankbar für eine Antwort wie: "Ich habe es wie du gemacht, aber es funktioniert bei mir wunderbar."

  3. #3
    Contao-Nutzer Avatar von Globe
    Registriert seit
    25.02.2010.
    Ort
    Dorsten
    Beiträge
    39

    Beitrag Nun hat es einmal funtioniert!

    Nun hat es einmal funktioniert - ich habe alle zusätzlich installierten Erweiterungen via "Einstellungen" deaktiviert - da konnte ich plötzlich das Formular absenden, <form action="..."> war gefüllt.

    Dann habe ich nach und nach die Erweiterungen wieder aktiviert - aber es funktionierte weiterhin, selbst, als alle Erweiterungen wieder eingebunden waren. Dann fiel mir ein, ich müsste sicherhaltshalber das Caching am Browser ausschalten - und schon war der Fehler wieder da.

    Die Prozedur mit dem Abschalten der Erweiterungen habe ich dann (mit und ohne Browsercaching) wiederholt - aber der Fehler ist hartnäckig wieder da: Kein Ziel in der form-action. Ich habe den Verdacht, dass es einen anderen Grund geben müsste, sonst ließe sich der heilsame Effekt ja wiederholen. Geisterhaft!

    Zu sehen unter Vorübergehende Testseite . Gerne nenne ich auch die Backend-Login-Daten.

  4. #4
    Contao-Nutzer Avatar von Globe
    Registriert seit
    25.02.2010.
    Ort
    Dorsten
    Beiträge
    39

    Beitrag $this->action ist leer

    Im Template für die Formulare, form.tpl, wird die form-action mit echo $this->action; ausgegeben - und $this->action ist leer. Wenn ich testweise

    PHP-Code:
    <form action="<?php echo $this->action?>">
    durch
    PHP-Code:
    <form action="index.php"
    ersetze, funktioniert das Formular und speichert die Werte.

    Was kann es bedeuten, wenn $this->action leer ist? Und kann ich diese Template-Änderung als dauerhaften Workaround nutzen? Oder lauert da eine Falle?

  5. #5
    Contao-Nutzer Avatar von Globe
    Registriert seit
    25.02.2010.
    Ort
    Dorsten
    Beiträge
    39

    HTML efg-Verhalten falsch bei Aufruf ohne explizite Seitenangabe

    Ich habe nun herausgefunden, warum es einmal funktioniert hatte, und es hat gar nichts mit anderen Erweiterungen zu tun:
    Es kommt nämlich darauf an, mit welcher Adresse die Formularseite aufgerufen wurde.

    Wenn das Formular auf der Startseite steht, dann kann es geschehen, dass die Seite nicht über die Navigation mit "http://www.muster.de/index.php/startseite.html" aufgerufen wird, sondern einfach mit "http://www.muster.de/". Dann ist $this->action nämlich leer, ansonsten enthält es eben "index.php/startseite.html" und funktioniert.

    Darum habe ich im Template form.tpl dies

    PHP-Code:
    <form action="<?php echo $this->action?>" etc.pp.>
    ersetzt durch
    PHP-Code:
    <?php if ($this->action): ?>
    <form action="<?php echo $this->action?>" etc.pp.>
    <?php else: ?>
    <form action="index.php" etc.pp.>
    <?php endif; ?>
    Bleibt die Frage, warum das mit dem leeren $this->action so ist?

  6. #6
    Contao-Fan Avatar von tom
    Registriert seit
    16.06.2009.
    Ort
    Ludwigsburg
    Beiträge
    385

    Standard

    Hallo Frank,

    das Verhalten kann ich bestätigen, ist allerdings kein "EFG"-Problem.
    Der Effekt dürfte gnerell bei Formularen auftreten, sofern diese auf der Startseite eingebunden sind und Übertragungsmethode 'POST' verwenden.

    Der Grund ist, dass die (relative) action-URL aus dem Request generiert wird, im Falle einer Startseite somit leer.

    Ein Problem dürfte dies nur im Safari sein (?), da andere Browser m.W. weniger "heikel" bzgl. der action eines Formulars sind.

    Schöne Grüße
    Thomas

  7. #7
    Contao-Nutzer Avatar von Globe
    Registriert seit
    25.02.2010.
    Ort
    Dorsten
    Beiträge
    39

    Multimedia

    Hallo Thomas,

    schön, dass du es mal bei dir getestet hast! Mit dem Browser, das könnte stimmen, denn nachdem ich heute Win7-Firefox von V.4 auf V.5 upgegradet hatte, ist der Effekt belanglos geworden, die action darf dann auch leer sein.

    Die efg-Erweiterung ist ausgesprochen nützlich, doch sehe ich auch die Catalog-Erweiterung als noch komfortablere Alternative.

    Schöne Grüße
    Frank

  8. #8
    Contao-Fan Avatar von tom
    Registriert seit
    16.06.2009.
    Ort
    Ludwigsburg
    Beiträge
    385

    Standard

    sicher, der Mailversand mit dem Katalog ist zweifelsohne sehr komfortabel

  9. #9
    Contao-Nutzer Avatar von Globe
    Registriert seit
    25.02.2010.
    Ort
    Dorsten
    Beiträge
    39

    Frage

    Mailversand ? Naja, aber für ziemlich komplexe Datenerfassungen ist der Katalog schon clever, unverzichtbar dazu die Taxonomie-Erweiterung.

Aktive Benutzer

Aktive Benutzer

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

Lesezeichen

Lesezeichen

Berechtigungen

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