Hi,
ich möchte im Backendbereich 4 RadioButtons einfügen und deren Werte in die Datenbank einlesen. Ich bin nun soweit, dass ich den Wert eines gesetzten Radio Buttons aus der Datenbank auslesen kann. Hierzu der nachfolgende Code.

Auszug aus der Admin.html.php

PHP-Code:

HTML
;

global 
$chk1$chk2$chk3$chk4$database,$cid;
$cids implode','$cid );
$database->setQuery("SELECT * FROM #__PMDatabase WHERE id IN ($cids)");
$results $database->loadObjectList();
foreach(
$results as $result){
if ( 
$result->chk == "none"   ) {$chk1 "checked";}
if ( 
$result->chk == "alert"  ) {$chk2 "checked";}
if ( 
$result->chk == "info"   ) {$chk3 "checked";}
if ( 
$result->chk == "note"   ) {$chk4 "checked";}
}

echo
'
<input type="radio" name="rb" value="none"  '
.$chk1.'='.$chk1.' /> none
<input type="radio" name="rb" value="alert" '
.$chk2.'='.$chk2.' /> alert
<input type="radio" name="rb" value="info"  '
.$chk3.'='.$chk3.' /> info
<input type="radio" name="rb" value="note"  '
.$chk4.'='.$chk4.' /> note';

echo <<< 
HTML 
Sicherlich gibt es eine elegantere Methode, aber wie gesagt, ich versuch mich erst seit ein paar Tagen in PHP...


Auszug aus der Admin.php

PHP-Code:
function save($option) {
   global 
$database;
   
$cids implode','$cid );
   
$auswahl $_POST['rb'];   
   
$database->setQuery("UPDATE #__PaidMailDatabase SET chk='test' WHERE ID IN ($cids) " );
   
$database->query();
   
$row = new mosPaidMailDatabase($database);
   
$row->bind($_POST);
   
$row->store();

   
mosRedirect("index2.php?option=$option""Saved");


Hier habe ich versucht, die Datenbank mit dem entsprechenden Werten eines gesetzten RadioButtons upzudaten. Das funktioniert auch alles bis auf die Tatsache, dass er den Wert nicht der jeweiligen ID zuordnet. D.h., irgenwie akzeptiert er "WHERE ID IN ($cids)"nicht, oder???

Wenn ich aus dem Statement "WHERE ID IN ($cids)" weglasse, schreibt er mir den jeweiligen Wert in alle Reihen, d.h die Verbindung zur Datenbank ist soweit vorhanden.

Wo liegt der Fehler???

Gruss Marco