0) $_GET['id_catalog'] = mysql_result($res_main_page, 0); } // Определяем параметры для подстановки empty($catalog['name']) ? $pagename = 'Статьи' : $pagename = $catalog['name']; empty($catalog['keywords']) ? $keywords = 'Ключевые слова' : $keywords = $catalog['keywords']; // Выбираем главный шаблон $html = file_get_contents("templates/default.html"); // Формируем горизонтальное меню $query = "SELECT * FROM $tbl_catalog WHERE hide = 'show' AND id_parent = 0 ORDER BY pos"; $cat = mysql_query($query); if (!$cat) exit("Ошибка при обращении к блоку статей"); if(mysql_num_rows($cat) > 0) { while($catalog = mysql_fetch_array($cat)) { // Если это текущая страница, то изменяем стиль if (intval($_GET[id_catalog])==intval($catalog[id_catalog])) $color = 'link_menu_main_cur'; else $color = 'link_menu_main_out'; $menu_main_link .= "". $catalog[name]. ""; } } else $menu_main_link = ''; // Формируем меню каталога $query = "SELECT id_catalog, name FROM $tbl_cat_catalog WHERE hide = 'show' AND id_parent = 0 ORDER BY pos"; $cat = mysql_query($query); if (!$cat) exit("Ошибка при обращении к каталогу"); if(mysql_num_rows($cat) > 0) { $menu_cat_link = ''; while($catalog = mysql_fetch_array($cat)) { // Если это текущий раздел и кнопка развернута if (intval($catalog[id_catalog]) == $_GET['id_catalog']) { $color = 'open'; // Формируем подразделы текущего раздела $query = "SELECT id_catalog, name FROM $tbl_cat_catalog WHERE hide = 'show' AND id_parent = {$catalog[id_catalog]} ORDER BY pos"; $sub_cat = mysql_query($query); if (!$sub_cat) exit("Ошибка при обращении к подкаталогу"); if(mysql_num_rows($sub_cat) > 0) { while ($sub_catalog = mysql_fetch_assoc($sub_cat)) { $sub_menu_cat_link .=' '. htmlspecialchars($sub_catalog[name], ENT_QUOTES). ''; } } else $sub_menu_cat_link = ''; } else { $color = 'closed'; $sub_menu_cat_link = ''; } $menu_cat_link .= ''; } $menu_cat_link .= '
'; $menu_cat_link .= " "; $menu_cat_link .= $sub_menu_cat_link; $menu_cat_link .= '
'; } else $menu_cat_link = ''; // Формируем горизонтальную иерархию $menu_tmp = navigation($_GET['id_catalog'], $tbl_main_page, $tbl_catalog); if (!empty($menu_tmp)) { $menu_hierarhy = '
'. $menu_tmp .'
'; } else $menu_hierarhy = ''; // Формируем информацию о контенте // Подразделы, если существуют в текущем разделе $query = "SELECT * FROM $tbl_catalog WHERE hide = 'show' AND id_parent = {$_GET[id_catalog]} ORDER BY pos"; $sub = mysql_query($query); if (!$sub) { throw new ExceptionMySQL(mysql_error(), $query, "Ошибка при обращении к подразделу"); } if(mysql_num_rows($sub) > 0) { $i = 0; // Четно, нечетно. Для создания строк $content = ''; while($subcatalog = mysql_fetch_assoc($sub)) { if (($i%2)==0) $content .= ''; $content .= "'; // Для создания промежутка между таблицами if (($i%2)==0) $content .= ''; if (($i%2)!=0) { $content .= ''; // Создание пустой строки, промежутка между блоками $content .= ''; } $i++; } $content .= '
". htmlspecialchars($subcatalog['name'])."
"; // Фомируем под под подразделы $query = "SELECT * FROM $tbl_catalog WHERE hide = 'show' AND id_parent = ".intval($subcatalog['id_catalog'])." ORDER BY pos"; $subsub = mysql_query($query); if (!$subsub) { throw new ExceptionMySQL(mysql_error(), $query, "Ошибка при обращении к под подразделу"); } if(mysql_num_rows($subsub) > 0) { while($subsubcatalog = mysql_fetch_assoc($subsub)) { $content .= "". " ". htmlspecialchars($subsubcatalog['name'])."
"; } } $content .= '
 

'; } // Статьи, если существуют в текущем разделе $query = "SELECT * FROM $tbl_position WHERE hide = 'show' AND id_catalog = ".$_GET['id_catalog']." ORDER BY pos"; $pos = mysql_query($query); if (!$pos) { throw new ExceptionMySQL(mysql_error(), $query, "Ошибка при обращении к блоку статей"); } if(mysql_num_rows($pos) > 0) { // Получаем параметры текущей статьи $position = mysql_fetch_assoc($pos); // Статься одна и подразделов нет if(mysql_num_rows($pos) == 1 && !mysql_num_rows($sub)) { // Если статья на самом деле является ссылкой - осуществляем редирект if($position['url'] != 'article') { echo " "; exit(); } } // Статей несколько или имеются также подразделы do { // Формируем статью $content .= '
'. article_print($position['id_position'], $_GET['id_catalog'], $tbl_paragraph, $tbl_paragraph_image). '
'; } while($position = mysql_fetch_assoc($pos)); } // Формируем контактную информацию $query = "SELECT * FROM $tbl_contactaddress LIMIT 1"; $adr = mysql_query($query); if(!$adr) { throw new ExceptionMySQL(mysql_error(), $query, "Ошибка извлечения контактной информации"); } $address = mysql_fetch_array($adr); $adr_arr = array(); if(!empty($address['address'])) $adr_arr[] = "$address[address]"; if(!empty($address['phone'])) $adr_arr[] = "тел. $address[phone]"; if(!empty($address['fax'])) $adr_arr[] = "fax $address[fax]"; if(!empty($address['email'])) $adr_arr[] = "e-mail: $address[email]"; if(!empty($adr_arr)) { $cont = "
".implode("
", $adr_arr)."
"; } else $cont = ''; // Замена переменных в шаблоне $html = str_replace('{menu_main_link}', $menu_main_link, $html); $html = str_replace('{menu_cat_link}', $menu_cat_link, $html); $html = str_replace('{menu_hierarhy}', $menu_hierarhy, $html); $html = str_replace('{content}', $content, $html); $html = str_replace('{cont}', $cont, $html); echo $html; } catch(ExceptionMySQL $exc) { require_once("exception_mysql_debug.php"); } catch(ExceptionMySQL $exc) { require_once("exception_mysql_debug.php"); } catch(ExceptionMember $exc) { require_once("exception_member_debug.php"); } ?>