Werte aus einem DISABLED Feld senden

jack007

Grünschnabel
Hallo, ich möchte Werte aus disabled Kontrollkästchen an meine DB senden. Sobald ein Kästchen aktiviert und disabled ist, wird dieses "aktiviert" nicht gesendet.
Gibt es da einen Umweg über hidden fields? Wenn ja, wie?

Danke für die Antwort.
 
Also ich kann mir nicht vorstellen, dass eine Checkbox die aktiviert ist nicht den Wert übermittelt, ich denke du hast einen Fehler im Code, bitte mal posten.
 
Also ich kann mir nicht vorstellen, dass eine Checkbox die aktiviert ist nicht den Wert übermittelt, ich denke du hast einen Fehler im Code, bitte mal posten.

Die Checkbox wird serverseitig aktiviert und steht dann auf disabled. Wenn diese Ckeckbox dann wieder zum Server gesendet wird, wird leider nichts übertragen...
 
über input type=hidden kannste versteckte werte senden
zb.
<input type="hidden" name="varname" value="wert" />

wenn ich deine frage richtig verstanden hab:confused:
 
Erstmal danke für die schnellen Antworten.

Das mit dem Hidden Field ist wahrscheinlich schon richtig, aber wie übergebe ich die Werte der Checkbox an dieses? Und in dem Fromular gibt es ach Checkboxen, die nicht disabled sind und von denen Werte gesendet werden. Wie kriege ich es hin, dass er die Werte bei disabled Checkbox vom Hidden Field sendet?
 
Wenn du die eingabe eh nicht siehst weil sie hidden ist ist es doch egal ob checkbox oder hidden?

Eine hidden checkbox gibt es nicht, wenn du das meinst.

Langsam blick ich nicht mehr durch?
 
Hallo!

SelfHTML sagt zu "disabled"
bestimmt, dass das Element nicht verändert werden kann
Diese Aussage stimmt zwar, aber es wird nicht darauf hingewiesen dass disabled auch deaktiviert bedeutet.
Ein Formularelement welches auf disabled steht hat also keine Funktion mehr..... sondern dient höchstens noch zu optischen Zwecken.

Aber wenn man ein wenig bastelt, dann kann man sich die Checkbox als disabled anzeigen lassen und trotzdem den Wert übergeben..... nämlich über ein hidden Element.
PHP:
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="get">
<?php
if(isset($_GET['send'])) {
    if(isset($_GET['box_1'])) {
        echo '<input type="checkbox" name="box_1" value="foo" checked="checked" disabled="disabled">'."\n";
        echo '<input type="hidden" name="box_1" value="foo">'."\n";
    } else {
        echo '<input type="checkbox" name="box_1" value="foo">'."\n";
    }
    
    if(isset($_GET['box_2'])) {
        echo '<input type="checkbox" name="box_2" value="bar" checked="checked" disabled="disabled">'."\n";
        echo '<input type="hidden" name="box_2" value="bar"">'."\n";
    } else {
        echo '<input type="checkbox" name="box_2" value="bar">'."\n";
    }
} else {
    echo '<input type="checkbox" name="box_1" value="foo">'."\n";
    echo '<input type="checkbox" name="box_2" value="bar">'."\n";
}
?>
<input type="submit" name="send" value="absenden">
</form>
Je nach Umfang und/oder Dynamik könnte man natürlich auch mit einer switch-Anweisung und/oder einer while/for-Schleife arbeiten.

Gruss Dr Dau
 
Zurück