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
В результате выбора во всех выпадающих списках получаем SQL-запрос для выбора записи из каталога(я так думаю).
Но лезут ошибки. например
ТОесть мне и обработчик наверно нужно изменить? как?
Просто я PHP не занимался. Так, могу там удалить, тут заменить, но глобально не разбираюсь.
Заранее благодарен.
Добрый день.
Есть скрипт каталога. В нем есть поиск по параметрам, но все параметры выводятся в виде
<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;
}
Но лезут ошибки. например
Я также пробывал указывать <option value=item[2][33] >значение 33</option>, чтоб посылался таже комбинация, но не работает.Ошибка Warning: Invalid argument supplied for foreach() в строке foreach($ses_sp as $i=>$ses_s)
ТОесть мне и обработчик наверно нужно изменить? как?
Просто я PHP не занимался. Так, могу там удалить, тут заменить, но глобально не разбираюсь.
Заранее благодарен.