Цитата:
<!-- Время выполнения скрипта 0.42975 секунд -->
<!-- Время, затраченное на выполнение MySQL запросов: 0.21389 секунд -->
<!-- Общее количество MySQL запросов 12 -->
<!-- Использовано оперативной памяти: 0.31 MB -->
<!-- Для вывода использовалось сжатие gzip, уровень сжатия: 3 -->
<!-- Общий размер файла: 13964 байт; После сжатия: 5003 байт -->
<!-- Время, затраченное на выполнение MySQL запросов: 0.21389 секунд -->
<!-- Общее количество MySQL запросов 12 -->
<!-- Использовано оперативной памяти: 0.31 MB -->
<!-- Для вывода использовалось сжатие gzip, уровень сжатия: 3 -->
<!-- Общий размер файла: 13964 байт; После сжатия: 5003 байт -->
Одна новость 1 запрос к БД(
PHP:
скопировать код в буфер обмена
скопировать код в буфер обмена
- <?PHP
- {
- }
- if(isset($_GET['article_name'])) $_GET['article_name'] = str_replace(".html", '', $_GET['article_name']);
- //навигация
- //главная
- $max = 10;
- @$page = $_GET['page'];
- $result = $db->query("SELECT COUNT(*) FROM ".PREFIX."_sarticles WHERE moderated='1'");
- $temp = $db->get_array($result);
- $posts = $temp[0];
- $total = (($posts - 1) / $max) + 1;
- if($page > $total) $page = $total;
- $start = $page * $max - $max;
- if($start<0) $start = 0;
- //категории
- $maxc = 10;
- @$pagec = $_GET['page'];
- $resultс = $db->query("SELECT COUNT(*) FROM ".PREFIX."_sarticles WHERE moderated='1' AND cat_name='".$db->safesql($_GET['cat_name'])."'");
- $tempc = $db->get_array($resultс);
- $postsc = $tempc[0];
- $totalc = (($postsc - 1) / $max) + 1;
- if($pagec > $totalc) $pagec = $totalc;
- $startc = $pagec * $maxc - $maxc;
- if($startc<0) $startc = 0;
- //статья целиком
- $getquery = $db->query("SELECT * FROM ".PREFIX."_articles WHERE moderated='1' AND alt_name='".$db->safesql($_GET['article_name'])."' AND cat_name='".$db->safesql($_GET['cat_name'])."'");
- //вывод коротких новостей в категории с постраничной навигацией
- $scatquery = $db->query("SELECT * FROM ".PREFIX."_sarticles WHERE moderated='1' AND cat_name='".$db->safesql($_GET['cat_name'])."' ORDER BY `id` DESC LIMIT $startc,$maxc");
- //вывод коротких новостей с постраничной навигацией
- $squery = $db->query("SELECT * FROM ".PREFIX."_sarticles WHERE moderated='1' ORDER BY `id` DESC LIMIT $start,$max");
- //full новость
- {
- if($db->num_rows($getquery)){
- while($data = $db->get_array($getquery)){
- $title = $data['title'];
- $xcat = $db->get_array($db->query("SELECT * FROM ".PREFIX."_category WHERE alt_name='".$data['cat_name']."'"));
- $titlenews .= ''.$data['title'].' » ';
- $titles .= ' » <a href="/'.$xcat['alt_name'].'">'.$xcat['name'].'</a> » '.$data['title'].'';
- $content .= '
- <div class="base btype2">
- <div class="heading">
- <h3><b><span>'.$data['title'].'</span></b></h3>
- </div>
- <div class="bci_block"><div class="bci_border"><div class="bci_cont">
- <table width="100%" border="0">
- <tr height="30px">';
- $content .= '<td width="15%" align="left"><strong>Категория:</strong> <a href="/'.$xcat['alt_name'].'">'.$xcat['name'].'</a><div style="float:right;"><strong>Дата:</strong> '.date_smart($data['dates']).'</div></td>';
- $content .= '
- </tr>
- </table>
- <table width="100%" border="0">
- <tr>
- <td background="/template/images/mline.gif" height="1" colspan="2"></td>
- </tr>
- </table>'.$data['article'].'<br>';
- //Теги
- for ($i = 0; $i < $tagscount; $i++) { // Перебираем каждый элемент и присваиваем ему ссылку
- }
- }
- $content .= '
- <b>Теги</b>: '.$tagline.'</a>
- <div style="clear:both;"></div>
- <!-- Сохронить -->
- <div style="float:right;">
- <script type="text/javascript" src="http://vkontakte.ru/js/api/share.js?10" charset="windows-1251"></script>
- <script type="text/javascript"><!--
- document.write(VK.Share.button(false,{type: "round", text: "Сохранить"}));
- --></script></div>
- <!-- Like -->
- <div style="float:left;">
- <div id="vk_like"></div>
- <script type="text/javascript">
- VK.Widgets.Like("vk_like", {type: "mini"});
- </script></div>
- ';
- $content .= '<br></div></div></div>';
- $content .= '</div>';
- $content .= '
- <!-- Коментарии -->
- <div id="vk_comments"></div>
- <script type="text/javascript">
- VK.Widgets.Comments("vk_comments", {limit: 20, width: "960", attach: "*"});
- </script>';
- }
- } else {
- $titlenews = 'Ошибка! » ';
- $titles = ' » Ошибка!';
- $content = <<<HTML
- <div class="base btype2">
- <div class="heading">
- <h3><b><span>Ошибка</span></b></h3>
- </div>
- <div class="bci_block"><div class="bci_border"><div class="bci_cont">Искомой статьи нет</div></div></div>
- </div>
- <a href="javascript:history.go(-1)" mce_href="javascript:history.go(-1)">Вернуться</a>
- HTML;
- }
- if( $revert_cache ) $config['allow_cache'] = "no";
- }
- //short новость в категории
- {
- if($db->num_rows($scatquery)){
- while($data = $db->get_array($scatquery)){
- $ycat = $db->get_array($db->query("SELECT * FROM ".PREFIX."_category WHERE alt_name='".$data['cat_name']."'"));
- $content .= '
- <div class="base btype2">
- <div class="heading">
- <h3><b><span><a href="/'.$data['cat_name'].'/'.$data['alt_name'].'.html">'.$data['title'].'</a></span></b></h3>
- </div>
- <div class="bci_block"><div class="bci_border"><div class="bci_cont">
- <table width="100%" border="0">
- <tr height="30px">';
- $content .= '<td width="15%" align="left"><strong>Категория:</strong> <a href="/'.$ycat['alt_name'].'">'.$ycat['name'].'</a><div style="float:right;"><strong>Дата:</strong> '.date_smart($data['dates']).'</div></td>';
- $content .= '
- </tr>
- </table>
- <table width="100%" border="0">
- <tr>
- <td background="/template/images/mline.gif" height="1" colspan="2"></td>
- </tr>
- </table>'.$data['article'].'</div></div></div>';
- $content .= '</div>';
- }
- // Проверяем нужны ли стрелки назад
- if ($pagec != 1) $pervpagec = '<a href=/'.$ycat['alt_name'].'/page/1>Первая</a> <a href=/'.$ycat['alt_name'].'/page/'. ($pagec - 1) .'>Предыдущая</a> ';
- // Проверяем нужны ли стрелки вперед
- if ($pagec != $totalc) $nextpagec = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec + 1) .'>Следующая</a> <a href=/'.$ycat['id'].'-'.$ycat['alt_name'].'/page/' .$totalc. '>Последняя</a>';
- // Находим две ближайшие станицы с обоих краев, если они есть
- if($pagec - 5 > 0) $page5leftc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec - 5) .'>'. ($pagec - 5) .'</a> ';
- if($pagec - 4 > 0) $page4leftc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec - 4) .'>'. ($pagec - 4) .'</a> ';
- if($pagec - 3 > 0) $page3leftc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec - 3) .'>'. ($pagec - 3) .'</a> ';
- if($pagec - 2 > 0) $page2leftc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec - 2) .'>'. ($pagec - 2) .'</a> ';
- if($pagec - 1 > 0) $page1leftc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec - 1) .'>'. ($pagec - 1) .'</a> ';
- if($pagec + 5 <= $totalc) $page5rightc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec + 5) .'>'. ($pagec + 5) .'</a>';
- if($pagec + 4 <= $totalc) $page4rightc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec + 4) .'>'. ($pagec + 4) .'</a>';
- if($pagec + 3 <= $totalc) $page3rightc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec + 3) .'>'. ($pagec + 3) .'</a>';
- if($pagec + 2 <= $totalc) $page2rightc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec + 2) .'>'. ($pagec + 2) .'</a>';
- if($pagec + 1 <= $totalc) $page1rightc = ' <a href=/'.$ycat['alt_name'].'/page/'. ($pagec + 1) .'>'. ($pagec + 1) .'</a>';
- // Вывод меню если страниц больше одной
- if ($totalc > 1)
- {
- $content.= "<div class=\"navigation\" align=\"center\" style=\"margin-bottom:10px; margin-top:10px;\">";
- $content.= $pervpagec.$page5leftc.$page4leftc.$page3leftc.$page2leftc.$page1leftc.'<span>'.$pagec.'</span>'.$page1rightc.
- $page2rightc.$page3rightc.$page4rightc.$page5rightc.$nextpagec;
- $content.= "</div>";
- }
- } else {
- $titlenews = 'Ошибка! » ';
- $titles = ' » Ошибка!';
- $content = <<<HTML
- <div class="base btype2">
- <div class="heading">
- <h3><b><span>Ошибка</span></b></h3>
- </div>
- <div class="bci_block"><div class="bci_border"><div class="bci_cont">Категории нет</div></div></div>
- </div>
- <a href="javascript:history.go(-1)" mce_href="javascript:history.go(-1)">Вернуться</a>
- HTML;
- }
- }
- else
- {
- if($db->num_rows($squery)){
- while($data = $db->get_array($squery)){
- $ycat = $db->get_array($db->query("SELECT * FROM ".PREFIX."_category WHERE alt_name='".$data['cat_name']."'"));
- $content .= '
- <div class="base btype2">
- <div class="heading">
- <h3><b><span><a href="/'.$data['cat_name'].'/'.$data['alt_name'].'.html">'.$data['title'].'</a></span></b></h3>
- </div>
- <div class="bci_block"><div class="bci_border"><div class="bci_cont">
- <table width="100%" border="0">
- <tr height="30px">';
- $content .= '<td width="15%" align="left"><strong>Категория:</strong> <a href="/'.$ycat['alt_name'].'">'.$ycat['name'].'</a><div style="float:right;"><strong>Дата:</strong> '.date_smart($data['dates']).'</div></td>';
- $content .= '
- </tr>
- </table>
- <table width="100%" border="0">
- <tr>
- <td background="/template/images/mline.gif" height="1" colspan="2"></td>
- </tr>
- </table>'.$data['article'].'</div></div></div>';
- $content .= '</div>';
- }
- // Проверяем нужны ли стрелки назад
- if ($page != 1) $pervpage = '<a href=/page/1>Первая</a> <a href=/page/'. ($page - 1) .'>Предыдущая</a> ';
- // Проверяем нужны ли стрелки вперед
- if ($page != $total) $nextpage = ' <a href=/page/'. ($page + 1) .'>Следующая</a> <a href=/page/' .$total. '>Последняя</a>';
- // Находим две ближайшие станицы с обоих краев, если они есть
- if($page - 5 > 0) $page5left = ' <a href=/page/'. ($page - 5) .'>'. ($page - 5) .'</a> ';
- if($page - 4 > 0) $page4left = ' <a href=/page/'. ($page - 4) .'>'. ($page - 4) .'</a> ';
- if($page - 3 > 0) $page3left = ' <a href=/page/'. ($page - 3) .'>'. ($page - 3) .'</a> ';
- if($page - 2 > 0) $page2left = ' <a href=/page/'. ($page - 2) .'>'. ($page - 2) .'</a> ';
- if($page - 1 > 0) $page1left = ' <a href=/page/'. ($page - 1) .'>'. ($page - 1) .'</a> ';
- if($page + 5 <= $total) $page5right = ' <a href=/page/'. ($page + 5) .'>'. ($page + 5) .'</a>';
- if($page + 4 <= $total) $page4right = ' <a href=/page/'. ($page + 4) .'>'. ($page + 4) .'</a>';
- if($page + 3 <= $total) $page3right = ' <a href=/page/'. ($page + 3) .'>'. ($page + 3) .'</a>';
- if($page + 2 <= $total) $page2right = ' <a href=/page/'. ($page + 2) .'>'. ($page + 2) .'</a>';
- if($page + 1 <= $total) $page1right = ' <a href=/page/'. ($page + 1) .'>'. ($page + 1) .'</a>';
- // Вывод меню если страниц больше одной
- if ($total > 1)
- {
- $content.= "<div class=\"navigation\" align=\"center\" style=\"margin-bottom:10px; margin-top:10px;\">";
- $content.= $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<span>'.$page.'</span>'.$page1right.
- $page2right.$page3right.$page4right.$page5right.$nextpage;
- $content.= "</div>";
- }
- } else {
- $titlenews = 'Ошибка! » ';
- $titles = ' » Ошибка!';
- $content = <<<HTML
- <div class="base btype2">
- <div class="heading">
- <h3><b><span>Ошибка</span></b></h3>
- </div>
- <div class="bci_block"><div class="bci_border"><div class="bci_cont">Статей нет</div></div></div>
- </div>
- <a href="javascript:history.go(-1)" mce_href="javascript:history.go(-1)">Вернуться</a>
- HTML;
- }
- }
- ?>