Value von checkbox wird nicht in mysql eingetragen

Hallo zusammen!

Mein Problem:
In meinem Formular habe ich eine Checkbox, dessen Value-Wert ich gerne in die mysql-DB eintragen möchte.
Die übergebenen Werte sind checked=„Ja“ und unchecked="".

Leider wird beim senden des Formulars und speichern der Daten in die DB immer der Wert „0“ in mein mysql-Feld eingetragen und ich weis beim besten Willen nicht warum. Habe bereits zwei Tage dran gesessen.

Hier ein Teil des Codes:

<?php // Initialisierung der Variable
$x\_reparaturfreigabe = Null; ?\>Reparaturfreigabe <?php if (isset($_POST['x_reparaturfreigabe'])) {
$aCheckValues = array('x\_reparaturfreigabe'); $aSelectedTiere = array(); foreach ($\_POST['x\_reparaturfreigabe'] as $v) { if (in\_array($v, $aCheckValues)) { $x\_reparaturfreigabe[] = $v; } else { die("Mist, schonwieder nen Fehler gefunden!"); } } $x\_reparaturfreigabe = implode(', ', $x\_reparaturfreigabe); } else { $x\_reparaturfreigabe = ''; } ?\> <?php //Wert initialisieren
$theValue = ($GLOBALS["x\_reparaturfreigabe"] != "") ? implode(",", $GLOBALS["x\_reparaturfreigabe"]) : ""; $theValue = (!get\_magic\_quotes\_gpc()) ? addslashes($theValue) : $theValue; $theValue = ($theValue != "") ? " '" . $theValue . "'" : "NULL"; $fieldList["`reparaturfreigabe`"] = $theValue; // die Kram in die DB eintragen $sSql = "INSERT INTO `gutachten` ("; $sSql .= implode(",", array\_keys($fieldList)); $sSql .= ") VALUES ("; $sSql .= implode(",", array\_values($fieldList)); $sSql .= ")"; phpmkr\_query($sSql, $conn) or die("Failed to execute query: " . phpmkr\_error() . ' SQL: ' . $sSql); ?\> Warum wird hier immer der Wert 0 in die Datenbank eingetragen? Ich verstehe die Welt nicht mehr! :frowning: Vielen Dank für jegliche Tips!

Hallo zusammen!

Mein Problem:
In meinem Formular habe ich eine Checkbox, dessen Value-Wert
ich gerne in die mysql-DB eintragen möchte.
Die übergebenen Werte sind checked=„Ja“ und unchecked="".

die werden sicher nicht uebergeben. schau mal hier:
http://de.selfhtml.org/html/formulare/auswahl.htm#ch…

hint: wenn sie nicht gechecked ist wird sie nicht uebertragen und hat keinen value.

Ja, das ist richtig. Aber mein Problem ist ja, obwohl ich die checkbox checke, wird der darin enthaltene Wert nicht übertragen, sondern der Wert „0“. Mein Value heißt aber „Ja“ und nicht „0“.

Was tun, in diesem Fall?

Gruß Laurenzo

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo zusammen!

Mein Problem:
In meinem Formular habe ich eine Checkbox, dessen Value-Wert
ich gerne in die mysql-DB eintragen möchte.
Die übergebenen Werte sind checked=„Ja“ und unchecked="".

die werden sicher nicht uebergeben. schau mal hier:
http://de.selfhtml.org/html/formulare/auswahl.htm#ch…

hint: wenn sie nicht gechecked ist wird sie nicht uebertragen
und hat keinen value.

Ja, das ist richtig. Aber mein Problem ist ja, obwohl ich die
checkbox checke, wird der darin enthaltene Wert nicht
übertragen, sondern der Wert „0“. Mein Value heißt aber „Ja“
und nicht „0“.

nein, die wichtige sache hast du ueberlesen:

value="Ja"\>

checked="ja" ist quatsch

kleiner Tipp…
mach ein
$sql = „insert into $table set spalte1=‚wert1‘, spalte2=‚wert2‘“;

dann kannst Du besser debuggen, wenn ein wert nicht vorhanden ist…
(echo $sql)
und vor allem hast Du dann weniger Probleme, wenn eine Variable leer ist…