globe: Abfrage durch Checkboxen

Beitrag lesen

n'abend,

Nun möchte ich eine Abfrage über Checkboxen steuern, das heißt, sind die Checkboxen A, C, E aktiv, werden auch nur diese spalten aus der datenbank abgefragt.

In deinem Formular hast du etwa das folgende?

<label><input type="checkbox" name="columns[]" value="A" /> A</label>  
<label><input type="checkbox" name="columns[]" value="B" /> B</label>  
<label><input type="checkbox" name="columns[]" value="C" /> C</label>

Dann kannst du in deinem Script etwas wie das folgende versuchen:

$columns = array(  
  'A' = 'spalte_A',  
  'B' = 'spalte_B',  
  'C' = 'spalte_C',  
);  
  
$cols = array();  
if( !empty($_REQUEST['columns']) )// $_GET oder $_POST benutzen wenn der Kontext bekannt ist  
{  
  foreach( $_REQUEST['columns'] as $c )  
  {  
    $cols[] = $columns[ $c ];  
  }  
  
  if( !$cols )  
  {  
    // Fehlerbehandlung, wenn keine (bekannte) Spalte gewählt?!  
  }  
}  
else  
{  
  // Fehlerbehandlung, wenn keine Spalte gewählt?!  
}  
  
mysql_query( 'SELECT '. join( ',', $cols ) .' FROM table' );

Auf diese Art wird auch gleich mögliche Probleme mit "falschen" oder unbekannten Spaltennamen zuvorgekommen.

Alternativ kannst du natürlich auch gerne aray_filter() benutzen ;)

weiterhin schönen abend...

--
#selfhtml hat ein Forum?
sh:( fo:# ch:# rl:| br:> n4:& ie:{ mo:} va:) de:] zu:} fl:( ss:? ls:[ js:|