FAPI: Nach dem Absenden von Formular Ausgabe ohne Formular erzeugen
am 18.12.2011 - 17:16 Uhr in
Hallo,
habe innerhalb von hook_form_alter();
$form['#redirect'] = 'irgendein_pfad';
probiert. Jedoch wird nach dem Abesenden des Formulars der Pfad nicht angezeigt. Zudem möchte ich nicht einfach irgendeine Node anzeigen, sondern einfach einen HTML-Output mittels meines Moduls erzeugen. Wie geht das?
- Anmelden oder Registrieren um Kommentare zu schreiben

Keine Lösung - aber Fragen und Ideen ;-)
am 21.12.2011 - 11:01 Uhr
Hallo Jepster,
erzeugst Du das Formular selbst per FAPI oder möchtest Du nur ein "fremdes" Formular anpassen? Wenn der Redirect nicht korrekt greift, könnte es daran liegen, dass in der eigentlichen Form-Submit-Funktion ein Redirect per drupal_goto oder ähnliches ausgeführt wird. Wenn Du das Formular selbst per FAPI erstellst, könntest Du natürlich den gleichen Weg gehen und eine Umleitung auf eine eigens erstellte Node oder per Modul erstellte Seite machen. Eine weitere Alternative wäre es, ein Multipage-Form zu erstellen und dort auf der letzten Seite das gewünschte HTML anzuzeigen. Außerderm lohnt es sich natürlich immer Meldungen per drupal_set_message auszugeben ;-)
Gruß,
Sven
Probier mal
am 21.12.2011 - 11:13 Uhr
Probier mal Folgendes:
<?php
// Implements hook_form_alter().
function mymodule_form_alter(&$form, &$form_state, $form_id) {
if($form_id == 'module_name_form') {
$form['actions']['submit']['#submit'][] = 'mymodule_custom_submit';
}
}
// Custom submit handler
function mymodule_custom_submit($form, &$form_state) {
$form_state['rebuild'] = true;
$form_state['redirect'] = 'my/custom/path';
}
?>
Ich habs jetzt mal mit
am 21.12.2011 - 13:41 Uhr
Ich habs jetzt mal mit drupal_goto(); soweit hingebogen, dass die Weiterleitung funktioniert.