Hallo,
ich greife über ein Skript auf eine MySQL Datenbank zu, meine Skript listet mir dann alles schön auf, mit Tabelllen etc. und Radui Buttons und da liegt meine Problem(!!!)
Die Radiobuttons bekommen alle automatisch die Bezeichnung des "Values" zugewiesen. In vielen Fällen ist es sinnvoll, aber ich möchte/ will auf eine Bezeichnung der Radio Buttons verzichten.
Wie stelle ich das an?
radio_group(-name=>$meineVariable, "...")
Bei mir steht natürlich noch mehr in der Klammer, aber das ist im Prinzip unwichtig. Ich habe es schon mit "-label(s)" versucht, aber die Radio-Buttons erhalte immer noch einen Wert.
Danke im Voraus.
User since
2003-08-04
5872
Artikel
ModeratorIn
Wie soll der Benutzer denn dann wissen, das er da auswählt?
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;
use strict; use warnings; Link zu meiner Perlseite
User since
2004-08-11
2
Artikel
BenutzerIn
Alle Daten sind in eine Tabelle eingefügt und für jeden Radio Button gibt es eine Spalte, der Wert der Buttons ist in der ersten Zeile der Tabelle notiert, und da sich dieser nicht ändert, bzw. nur Zeilen aber nicht Spalten weise, reicht die Bezeichnung einmalig.
Es würde mir schon reichen, das Label einfach als Leerstring zu definieren, aber das bekomme ich nicht hin.
Hat jemand eine Idee?
User since
2003-08-04
5872
Artikel
ModeratorIn
Hallo WebSorcerer :-)
Ich schau gleich mal in mein CGI-Buch wenn ich zu Hause bin, vielleicht finde ich da etwas dazu. Es geht doch um die Darstellung auf einer Webseite, oder habe ich Dich falsch verstanden?
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;
use strict; use warnings; Link zu meiner Perlseite
User since
2003-08-04
14371
Artikel
ModeratorIn
Herzlich Willkommen in der Perl-Community
Die Werte der Radiobuttons kommen ja aus einem Array. Normalerweise müsste es bei Dir ungefähr so aussehen:
radio_group(-name=>$meineVariable, -values => \@list);
Du musst noch einen Hash erzeugen, in dem die Elemente von@list die Schlüssel sind und Leerstrings die Values. Dann hast Du den Labelhash. Das könnte dann so aussehen:
my $hashref;
foreach(@list){
$hashref->{$_} = '';
}
radio_group(-name=>$meineVariable, -values => \@list, -labels => $hashref);
\n\n
<!--EDIT|renee|1092243187-->
User since
2003-08-04
5872
Artikel
ModeratorIn
wozu gehört dieses radio_group? Ist das eine Methode von CGI.pm? Ich hab dazu irgendwie nichts gefunden in meinem "CGI Programmierung mit Perl".
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;
use strict; use warnings; Link zu meiner Perlseite
User since
2003-08-04
5872
Artikel
ModeratorIn
Aha, das ist also eine CGI-Methode, um einem Schreibarbeit ala
<INPUT TYPE="radio" NAME="gruppe" VALUE="eins" CHECKED>eins<br />
<INPUT TYPE="radio" NAME="gruppe" VALUE="zwei">zwei<br />
<INPUT TYPE="radio" NAME="gruppe" VALUE="drei">drei<br />
<INPUT TYPE="radio" NAME="gruppe" VALUE="vier">vier<br />
<INPUT TYPE="radio" NAME="gruppe" VALUE="fuenf">fünf<br />
abzunehmen?
(Wobei es auch dafür bestimmt schon eine schönere Methode in CGI.pm gibt...)
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;
use strict; use warnings; Link zu meiner Perlseite
User since
2004-08-11
2
Artikel
BenutzerIn
Danke danke!
Habe das Problem jetzt anders gelöst. Die Daten kommen bei mir jedoch nicht aus einem Array, sondern aus einer MySQL Datenbank, daher die $ref-Verweise, und so wie es unten nun steht, habe ich einfach nur Radiobuttons mit der internen Bezeichnung FrageX (den Wert für X holt sich das Skript dann aus der Datenbank)
<input type=\"radio\" name=\"frage" . $ref->{'nr'} . "\" value=" . $i . "\"/>
User since
2003-08-04
1706
Artikel
HausmeisterIn
Naja wie du meinst, Aber ich lege dir auch mal
CGI ans Herz. Ist n super Modul mit dem du die Lesbarkeit deines Programms ungemein verbessern kannst.
Gruß Alex