Помогите изменить обработку формы с checkbox на select

surfman

Новичок
Помогите изменить обработку формы с checkbox на select

Добрый день.
Есть скрипт каталога. В нем есть поиск по параметрам, но все параметры выводятся в виде

<input type=checkbox name=spisok[1][1] >значение 1
<input type=checkbox name=spisok[1][2] >значение 2
<input type=checkbox name=spisok[1][3] >значение 3
<p>поиск по следующему параметру</p>
<input type=checkbox name=spisok[2][11] >значение 11
<input type=checkbox name=spisok[2][22] >значение 22
<input type=checkbox name=spisok[2][33] >значение 33

Но мне нужно изменить чекбоксы на выпадающие списки. Я нашел где формируется HTML вывод. Пока изменил результат на

<select name="spisok[1]">
<option value=[1] >значение 1</option>
<option value=[2] >значение 2</option>
<option value=[3] >значение 3</option>
</select>
<p>поиск по следующему параметру</p>
<select name="spisok[2]">
<option value=[11] >значение 11</option>
<option value=[22] >значение 22</option>
<option value=[33] >значение 33</option>
</select>

Хотя я не знаю, что нужно ставить в name и value.
Вроде нашел обработчик. Удалил из кода все ненужное, или то что относится к другим формам. Вот так выглядит код файла обработки для spisok

PHP:
if(!isset($_GET['pn']) || $_POST['Clean'] || $_POST['sea']) 
        { 
        if($_SESSION['spisok']) unset($_SESSION['spisok']); 
        } 
if($_POST['sea'] && !$_POST['Clean']) 
        { 
        if($_POST['spisok']) $_SESSION['spisok']=$_POST['spisok']; 
        } 
if($_SESSION['spisok']) 
{ 
$u=""; 
foreach($_SESSION['spisok'] as $in=>$ses_sp) 
    { 
        $u .= " spisok".intval($in)." IN ("; 
        $a=0; 
        foreach($ses_sp as $i=>$ses_s) 
            { 
            if($a>0) 
            $u .= ","; 
            $u .= intval($i); 
            $a++; 
            } 
        $u .= ") AND "; 
    } 
$vibor1 .=$u; 
}
В результате выбора во всех выпадающих списках получаем SQL-запрос для выбора записи из каталога(я так думаю).
Но лезут ошибки. например
Ошибка Warning: Invalid argument supplied for foreach() в строке foreach($ses_sp as $i=>$ses_s)
Я также пробывал указывать <option value=item[2][33] >значение 33</option>, чтоб посылался таже комбинация, но не работает.
ТОесть мне и обработчик наверно нужно изменить? как?
Просто я PHP не занимался. Так, могу там удалить, тут заменить, но глобально не разбираюсь.
Заранее благодарен.
 

AmdY

Пью пиво
Команда форума
указывай сколько и в раздел РАБОТА
 
Сверху