Здравствуйте уважаемые. Прошу Вашей помощи. Вопрос в следующем: в привиденном ниже куске кода, возникает проблема при нажатии на кнопку "Найти\ Показать", т.е условие не выполняется.., у меня почему то не записывается массив $cat, точнее присваевается, но тип получается строка. а при нажатии на "Показать все", опять получается ожидаемый мною массив, и я с ним уже дальше работаю. Почему так помогите пожалуйста. Надеюсь понятно объяснил свой непонятный вопрос. Заранее спасибо. Код (Text): <?php case '3':{ $result=mysql_query("SELECT * FROM `cat`",$db); if ($result){ if (mysql_num_rows($result)>0) { while ($myrow=mysql_fetch_array($result)) { $cat[$myrow['cat_id']] = $myrow['title'] .'|||'. $myrow['parent_id']; } } } ?> <form name="search_post" action="" method="post"> <select name="cat"> <option value="" selected="selected" >Все категории</option> <?php foreach($cat as $cat_id=> $value) { list ($title, $parent) = explode("|||", $value); echo '<option value="'. $cat_id .'">'. $title .'</option>'; } ?> </select> <input name="sear" type="hidden" value="3"> <input name="step" type="hidden" value="3"> <input type="submit" value="Найти / Показать"> </p> </form> </td> <td align="right" valign="top"> <form name="all" action="" method="post"> <input name="step" type="hidden" value="3"> <input name="all" type="hidden" value="3"> <input type="submit" value="Показать все"> </form> <?php if (!isset($_POST['sear']) || isset($_POST['all'])) { $res= mysql_query ("SELECT * FROM `data`, `relation`, `cat` WHERE data.data_id=relation.data_id AND relation.cat_id=cat.cat_id AND cat.parent_id='0' ORDER BY `date` DESC", $db); if (mysql_num_rows($res)<=0) echo " В базе нет данных."; } else { $begin = "SELECT * FROM `data`, `relation`, `cat` "; $where = "WHERE data.data_id=relation.data_id AND relation.cat_id=cat.cat_id "; $end = "ORDER BY `date` DESC"; $parent = "AND cat.parent_id='0' "; if ($_POST['cat']) { $where .= "AND cat.cat_id='". $_POST['cat'] ."' "; unset($parent); } $query= $begin.$where.$parent.$end; $res= mysql_query ($query); if (mysql_num_rows($res)<=0) echo " В базе нет данных."; } echo '<table class="tadmin"="tadmin" width="100%"> <tr bgcolor="#E7E7DE"> <td align="center"><b>Название</b></td> <td align="center"><b>$</b></td> <td align="center"><b>Категория</b></td> <td align="center"><b>Подкатегория</b></td> <td align="center"><b>Дата добавления</b></td></tr>'; $i=1; while ($row= mysql_fetch_array ($res)) { foreach($rel as $val) { list ($did, $rcid) = explode("|||", $val); if ($did==$row['data_id']) { $cid[]=$rcid; } } $n=count($cid); if(!isset($cat)) { foreach($cat as $ccid=> $value) { list ($title, $parent) = explode("|||", $value); for ($k=0; $k<$n; $k++) { if($ccid==$cid[$k]){ if ($parent==0){ $root=$title; } else { $subcat.=$title. ', '; } } } } } $subcat = substr($subcat, 0, strlen($subcat) - 2); // .... // Вывод результатов.... unset($cid); unset($subcat); } break; } ?> PHP: