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.
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?