определить какие checkbox отмечены и вывести соответствующие записи из БД

Здравствуйте.Есть несколько checkbox-ов, значения которых(отмечены они или нет) отправляются в файл index.php.В этом файле должны выводиться данные отмеченных checkbox-ов из базы .Например при отмеченном/** * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann * (http://qbnz.com/highlighter/ and http://geshi.org/) */ .html4strict.geshi_code {font-family:monospace;} .html4strict.geshi_code .imp {font-weight: bold; color: red;} .html4strict.geshi_code .kw2 {color: #000000; font-weight: bold;} .html4strict.geshi_code .kw3 {color: #000066;} .html4strict.geshi_code .es0 {color: #000099; font-weight: bold;} .html4strict.geshi_code .br0 {color: #66cc66;} .html4strict.geshi_code .sy0 {color: #66cc66;} .html4strict.geshi_code .st0 {color: #ff0000;} .html4strict.geshi_code .nu0 {color: #cc66cc;} .html4strict.geshi_code .sc-1 {color: #808080; font-style: italic;} .html4strict.geshi_code .sc0 {color: #00bbdd;} .html4strict.geshi_code .sc1 {color: #ddbb00;} .html4strict.geshi_code .sc2 {color: #009900;} .html4strict.geshi_code span.xtra { display:block; }

 <input type="checkbox" name="a" />
 
выводятся все строки в которых имеется запись к примеру г.Москва.
/** * GeSHi (C) 2004 - 2007 Nigel McNie, 2007 - 2008 Benny Baumann * (http://qbnz.com/highlighter/ and http://geshi.org/) */ .html4strict.geshi_code {font-family:monospace;} .html4strict.geshi_code .imp {font-weight: bold; color: red;} .html4strict.geshi_code .kw2 {color: #000000; font-weight: bold;} .html4strict.geshi_code .kw3 {color: #000066;} .html4strict.geshi_code .es0 {color: #000099; font-weight: bold;} .html4strict.geshi_code .br0 {color: #66cc66;} .html4strict.geshi_code .sy0 {color: #66cc66;} .html4strict.geshi_code .st0 {color: #ff0000;} .html4strict.geshi_code .nu0 {color: #cc66cc;} .html4strict.geshi_code .sc-1 {color: #808080; font-style: italic;} .html4strict.geshi_code .sc0 {color: #00bbdd;} .html4strict.geshi_code .sc1 {color: #ddbb00;} .html4strict.geshi_code .sc2 {color: #009900;} .html4strict.geshi_code span.xtra { display:block; }

<form action="index.php" method="post">
<input type="checkbox" name="a" />
<input type="checkbox" name="b" />
<input type="checkbox" name="c" />
<input type="checkbox" name="d" />
<input type="submit" value="Найти" />
</form>
 

С одним или двумя checkbox-ами проблем не возникает,но если их больше то код будет просто огромен.

1 ответов



<input type="checkbox" name="params[]" value="a" />
<input type="checkbox" name="params[]" value="b" />
<input type="checkbox" name="params[]" value="c" />
<input type="checkbox" name="params[]" value="d" />
 


$vals = array('a','b','c','d');
                            // Если все отметить и отправить будет такой массив
$params = $_POST['params']; // array(0 => 'a', 1 => 'b', 2 => 'c', 3 => 'd');

foreach( $params as $i => $v ){
   if( !in_array($v, $vals) ){
      unset($params[i]);
   }
}

$sql = "SELECT * FROM `table` WHERE `param` IN(".@implode(",",$params).") ORDER BY `ordering` ASC LIMIT 100";
// ...