AHAH - Fehler mit file upload Element

am 26.09.2012 - 01:49 Uhr in
Hallo!
In eigenem Modul verwende ich einen AHAH-Button (Sinn des ganzen: nach dem Versenden der E-Mail, soll der Button durch eine Meldung ersetzt werden, da die E-Mail nur 1x versendet werden darf).
Es funktioniert nur wenn ich das file-field rausnehme.
Ist das file Element in der Form bekomme ich im Firefox eine leere Seite und bei ID die Meldung: "Möchten Sie die 'ahah37093551.js' (32 bites) von 'www.meineseite.de' öffnen oder speichern".
Hat jemand dafür eine Erklärung, bzw. eine Idee wo der Fehler liegt?
1000 Dank im Voraus!
Ich habe hier: http://drupal.org/node/806500 bereits alles ausprobiert, nichts hat geholfen.
Hier der Code:
<?php
function test_modul_form($form_state, $uid){
$form['#attributes'] = array('enctype' => "multipart/form-data");
$form['ref_name1'] = array(
'#type' => 'textfield',
'#title' => t('Name'),
'#default_value' => $ref_name1,
'#size' => 72,
'#maxlength' => 60,
'#required' => TRUE,
);
$form['ref_email1'] = array(
'#type' => 'textfield',
'#title' => t('E-Mail-Address'),
'#default_value' => $ref_email1,
'#size' => 72,
'#maxlength' => 60,
'#required' => TRUE,
);
$form['sendmail_ref1'] = array(
'#type' => 'submit',
'#value' => 'Send email',
'#ahah' => array(
'path' => 'admin/settings/test_modul/ahah',
'event' => 'click',
'wrapper' => 'test-modul-form',
'method' => 'replace',
),
);
$form['file_1'] = array(
'#type' => 'file',
'#title' => t('file1 [PDF]'),
'#default_value' => '',
'#size' => 60,
'#required' => TRUE,
);
// submit
$form['submit1'] = array(
'#type' => 'submit',
'#value' => 'submit',
'#submit' => array('test_modul_form_submit'),
'#name' => 'submit1',
);
return $form;
}
function test_modul_ahah() {
$form_build_id = $_POST['form_build_id'];
$form_state = array();
$form_state = array('values' => $_POST);
$form = form_get_cache($form_build_id, $form_state);
form_set_cache($form_build_id, $form, $form_state);
$form += array(
'#post' => $_POST,
'#programmed' => FALSE,
);
$form = form_builder('test_modul_form', $form, $form_state);
unset($form['sendmail_ref1']);
$form['markup_sendmail1'] = array(
'#prefix' => '<strong>',
'#type' => 'markup',
'#value' => t('Email has been sent.'),
'#suffix'=> '</strong>',
);
drupal_render($form);
print drupal_json(array('status' => TRUE, 'data' => $output));
exit();
}
?>
- Anmelden oder Registrieren um Kommentare zu schreiben
Hat hier niemand eine Idee?
am 27.09.2012 - 11:28 Uhr
Hat hier niemand eine Idee?