WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   radiobuttons per PHP als checked setzen? (http://www.wcm.at/forum/showthread.php?t=106745)

row 26.08.2003 12:20

radiobuttons per PHP als checked setzen?
 
Hi Leute,

bin gerade dabei an meinem Online-Fragebogen weiterzubasteln :)
Bei der Eingabeprüfung kontrolliert er mir jetzt brav in der SQL Datenbank ob alles da ist und schreibt mir die vorhandenen Daten wieder in die Formularfelder damit die Leute nicht alles doppelt schreiben müssen sondern nur dass das fehlt. Bei den text-boxen funktioniert dass ja super - aber
wie kann ich den die Radiobuttons wieder so herstellen wie die Leute dass angeklickt haben? Auslesen des Checkbox-Wertes aus der MySQL funkioniert, aber kann man dass dann per <checked="checked"> irgendwie vorselektieren.
Ich hab's mal mit einer Variable probiert die einfach einen Wert als "checked" oder "nichtchecked" definiert und dann per <checked=$wert> einsetzt, aber jedesmal wenn man in die input box checked schreibt setzt er auf checked, egal welchen wert ich übergebe.
Any ideas? *Grübel*

Sesa_Mina 26.08.2003 13:42

http://selfhtml.teamone.de/html/formulare/auswahl.htm

...
Zitat:

Wenn Sie Auswahlmöglichkeiten vorselektieren wollen, dann notieren Sie in dem <input>-Tag der entsprechenden Checkbox das alleinstehende Attribut checked, also z.B.:
<input type="checkbox" name="Kenntnisse_in" value="HTML" checked>
Wenn Sie XHTML-konform arbeiten wollen, müssen Sie dieses Attribut in der Form checked="checked" notieren.
Bei Checkboxen dürfen Sie mehrere Einträge vorselektieren.
...

snowman 26.08.2003 14:12

Re: radiobuttons per PHP als checked setzen?
 
Zitat:

Original geschrieben von row
Ich hab's mal mit einer Variable probiert die einfach einen Wert als "checked" oder "nichtchecked" definiert und dann per <checked=$wert> einsetzt, aber jedesmal wenn man in die input box checked schreibt setzt er auf checked, egal welchen wert ich übergebe.
Any ideas? *Grübel*

ja, das ist so. warum? keine ahnung.

gruss,
snowman

row 26.08.2003 14:26

Ja, das habe ich schon gelesen, ohne Erfolg.

Ich glaube ich habe jetzt mein Problem isoliert - ich kann den MySQL Syntax noch nicht gut genug :(

Also, ich habe da jetzt meinen Wert des Radiobuttons in der MySQL eingetragen (0-3). Auslesen kann ich ihn schon mit:
$abfrage = "SELECT feld FROM tabelle WHERE session=$survey_id";
$ergebnis = mysql_query($abfrage);
while($row = mysql_fetch_object($ergebnis))
{
echo $row->feld;
}

Dass ist jetzt ein Array, obwohl er nur einen Wert enthält, oder?
Wie kann ich denn da jetzt den einen Wert rauslesen um ihn für die Abbfrage der if schleife nutzen zu können? $wert ist mein Wert aus der Tabelle:
z.B.: if ($wert =="1") {tu irgendwas;}

snowman 26.08.2003 14:51

$row['wert']

gruss,
snowmana

Sesa_Mina 26.08.2003 14:54

Bei Radio Buttons kann innerhalb der selben Gruppe immer nur *ein* Radio Button selektiert sein. Und zwar der, wessen Nummer übergeben wurde.

Eine Gruppe sind in diesem fall ein oder mehrere Radio Buttons mit dem selben Namen. Sie werden von 0 an durchnummeriert denk ich mal.

d.H. wenn du den Wert 2 hast, dann ist es der 3. Radio Button der selektiert war. Und ebendiesen musst du dann beim erstellen des Formulars auch wieder selektieren.

Zum Bleistift:

echo "<input";
if ($mynews[7] == 5) {echo " checked";}
echo " type=radio name=newspriority value=5>";

:)

row 26.08.2003 14:57

@Snowman

Meinst Du so?
$abfrage = "SELECT feld FROM tabelle WHERE session=$survey_id";
$ergebnis = mysql_query($abfrage);
$row['wert'] = mysql_fetch_object($ergebnis))


Und dann so?
if ($row['wert']=="1") {tu irgendwas;}

snowman 26.08.2003 15:02

Zitat:

Original geschrieben von row
@Snowman

Meinst Du so?
$abfrage = "SELECT feld FROM tabelle WHERE session=$survey_id";
$ergebnis = mysql_query($abfrage);
$row['wert'] = mysql_fetch_object($ergebnis))


Und dann so?
if ($row['wert']=="1") {tu irgendwas;}

$row = mysql_fetch_object($ergebnis))

gruss,
snowman

row 26.08.2003 15:32

Ich bin zu blöd dazu, könnte sich mal einer von Euch beiden den Originalcode ansehen (siehe unten):

<?PHP
$abfrage = "SELECT playful FROM tels WHERE session=$survey_id";
$ergebnis = mysql_query($abfrage);
$row = mysql_fetch_object($ergebnis);

if ($row['0'] =="0") {echo"
Box0 checked
";} else {echo"
Box0 unchecked
";}
if ($row['0'] =="1") {echo"Box1 checked
";} else {echo"Box1 unchecked
";}
if ($row['0'] =="2") {echo"Box2 checked
";} else {echo"Box2 unchecked
";}
if ($row['0'] =="3") {echo"Box3 checked
";} else {echo"Box3 unchecked
";}
?>

Das sollte doch funktionieren oder???

K@sperl 26.08.2003 19:20

Ist der Name der Spalte '0' ?

Ich hab heute so was ähnliches programmiert, zugreifen tu ich mit $row_VARIABLE["spaltenname"], also in deinem Fall mit deinen Variablen wär das dann $row_ROW[.....], und wenn's mehr Reihen in der Ergebnistabelle sind würde ich eine while Schleife machen ...

Hoffentlich hab ich dich richtig verstanden.


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:23 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag