[Gelöst] FORM API: Radio Buttons einen String statt Integer zuweisen? In Views werden nur Zahlen angezeigt.
![](http://www.drupalcenter.de/files/noavatar_mini.gif)
am 12.06.2010 - 12:08 Uhr in
Hallo,
Ich in der template.php habe Ich Formulareingaben für das Modul signup erstellt.
Bei den Radio-Buttons habe ich jetz aber das Problem, dass die Auswahl als Zahl gespeichert und so in Views ebenfalls als Zahl angezeigt wird.
Gibt es eine Möglichkeit dies zu ändern?
Zur Zeit sieht der Code in der template.php folgendermaßen aus. Bei Auswahl Samstag wird der Wert 0 und bei Auswahl Sonntag der Wert 1 in die Datenbank geschrieben.
Ich möchte aber, dass Samstag bzw. Sonntag in die Datenbank geschrieben werden, damit später in der Übersichtstabelle nicht 1 oder 0 stehen.
<?php
$form['signup_form_data']['Veranstaltung'] = array(
'#type' => 'radios',
'#title' => t('Zu welcher Veranstaltung kommen Sie?'),
'#default_value' => variable_get('Veranstaltung', 0),
'#options' => array(t('Samstag'), t('Sonntag')),
);
?>
Anmerkung: Ich kann bei Views die Option "If the field contains the number zero, display the empty text instead" wählen und einen Wert für 0 (in dem Fall Samstag) eingeben.
Villeicht gibt es hier auch eine Möglichkeit dies für den Wert 1 zu ändern. Wäre sogar noch vorteilhafter als der oben genannte Ansatz.
Gruss ananda
- Anmelden oder Registrieren um Kommentare zu schreiben
So dürfte es
am 12.06.2010 - 15:45 Uhr
So dürfte es klappen:
<?php
$form['signup_form_data']['Veranstaltung'] = array(
'#type' => 'radios',
'#title' => t('Zu welcher Veranstaltung kommen Sie?'),
'#default_value' => variable_get('Veranstaltung', 0),
'#options' => array('Samstag' => t('Samstag'), 'Sonntag' => t('Sonntag')),
);
?>
Das Array für #options bei Radio Buttons kannst du quasi immer so aufbauen:
<?php
'#options' => array('zu speichernder String' => 'anzuzeigender String', ...);
?>
PS: Dann musst du aber glaube ich deinen Default_Value ändern, zum Beispiel so:
<?php
'#default_value' => variable_get('Veranstaltung', 'Samstag'),
?>
(Der Default-Value kann nicht auf 0 gesetzt werden, wenn es die Option 0 nicht mehr gibt.)
Super! Funktioniert
am 12.06.2010 - 17:17 Uhr
Super! Funktioniert einwandfrei. Vielen Dank. Danke auch für die Aufklärung!