Neue Variablen in Funktionen nutzen - wie?
Eingetragen von tomx (771)
am 06.12.2010 - 21:36 Uhr in
am 06.12.2010 - 21:36 Uhr in
Wi bekommt man die Variablen ($to, $liste), die außerhalb der funktion form_submit() stehte in die funktion?
<?php
$to = 'info@bla.bla';
$liste = 'liste.bla.bla';
function my_form_submit($form, $form_state) {
#die();
$checkbox = $form_state['values']['check'];
if ($checkbox != 1) {
$checkbox = 'subscribe';
}else{
$checkbox = 'unsubscribe';
}
$valid_email = $form_state['values']['email'];
$from = $valid_email;
$body = $checkbox.' '.$liste.' '.$valid_email;
#print($checkbox);
$params = array(
'body' => $body,
'subject' => $checkbox,
);
if (drupal_mail('my_form', 'some_mail_key','$to', language_default(), $params, $valid_email, TRUE))
{
drupal_set_message( $valid_email. 'wurde eingetragen');
} else {
drupal_set_message('Es gab einen Fehler bei der Eintragung');
}
}
?>
- Anmelden oder Registrieren um Kommentare zu schreiben
http://php.net/manual/de/lang
am 06.12.2010 - 23:02 Uhr
http://php.net/manual/de/language.variables.scope.php
Suchmaschinenoptimierung (SEO) & Drupal
Ob global oder local
am 06.12.2010 - 23:33 Uhr
Ob global oder local definiert. Die Variablen in der funktion submit() sind leer :-(
?
Hast Du das auch _so_
am 07.12.2010 - 09:59 Uhr
Hast Du das auch _so_ gemacht?
$to = 'info@bla.bla';
$liste = 'liste.bla.bla';
function my_form_submit($form, $form_state) {
global $to;
global $liste;
#die();
$checkbox = $form_state['values']['check'];
...
lg leda
"Du liebst es, Du brauchst es oder Du gibst es weg"
www.leda.ch
ja, genau so habe ich es
am 07.12.2010 - 10:30 Uhr
ja, genau so habe ich es gemacht. Die Variablen sind aber nur verfügbar wenn sie innerhalb von *_submit() aufgerufen werden. Das deklarieren als global und außerhalb den Wert vergeben klappt nicht.
Versuch es doch mal so (nicht
am 07.12.2010 - 11:19 Uhr
Versuch es doch mal so (nicht getested)
function set_my_mail_info(&$to, &$liste) {
$to = 'info@bla.bla';
$liste = 'liste.bla.bla';
}
function my_form_submit($form, $form_state) {
. . . . . . . .
$to = '';
$liste = '';
set_my_mail_info(&$to, &$liste);
. . . . . . . . .
}
Damit bekommst Du die Werte in die Funktion.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
super. Das klappt. Herzlichen
am 07.12.2010 - 11:34 Uhr
super. Das klappt.
Herzlichen Dank!
Hast Du noch eine Erklärung dazu? Warum global nicht klappt und Variablen mit Funktionen in Drupal definiert werden müssen?