View file service/bash.php

File size: 2.2Kb
<?php
require_once ("../includes/start.php");require_once ("../includes/functions.php");require_once ("../includes/header.php");
include_once ("../themes/header.php");
error_reporting(0);
ini_set('user_agent',$_SERVER['HTTP_USER_AGENT']);

//грузим rss файл
$data = file_get_contents('http://bash.org.ru/rss');

//обрабатываем


preg_match_all('|<pubDate>(.+)</pubDate>|i',$data,$dat);

preg_match_all('|<description><!\[CDATA\[(.+)\]\]></description>|i',$data,$content);

//теперь у нас есть 2 массива по 100 элементов, воспользуемся постраничным выводом

//всего элементов
$all = sizeof($content[1]);

//число сообщений на странице
$pnumber=6;

//номер страницы
$page = (isset($_GET['page'])) ? (int)$_GET['page'] : 1;

//число страниц
$num_pages = ceil($all/$pnumber);

//начальная позиция
$start = $page*$pnumber-$pnumber;

//проверка номера страницы
if($page > $num_pages || $page < 1)
{
$page=1;
$start=0;
}

//заголовки
if(substr_count($_SERVER['HTTP_USER_AGENT'], 'MSIE'))
{header('Content-type: text/html; charset=utf-8');}
else


//выводим верх страницы (html код, выносим за <?php


//выводим цитаты
if($all)
{
for($i=$start; $i<$start+$pnumber; $i++)
{print '<p style="border:1px solid;padding:2px"><img src="../images/img/forums.gif" alt=""/> '.$dat[1][$i].'<br />'.str_replace('<br>','<br/>',iconv('windows-1251','utf-8',$content[1][$i])).'</p>';}

//навигация
echo '<p>';

for($pr = '', $i=1; $i<=$num_pages; $i++)
{
echo $pr=(($i == 1 || $i == $num_pages || abs($i-$page) < 2) ? ($i == $page ? " [$i] " : ' <a href="'.$_SERVER['SCRIPT_NAME'].'?page='.$i.'">'.$i.'</a> ') : (($pr == ' ... ' || $pr == '')? '' : ' ... '));
}

echo '</p>';
}
else
{echo '<p>цитат нет</p>';}

echo'<img src="/images/img/back.gif" alt=""/> <a href="index.php?">Сервисы</a><br/>';
echo'<img src="/images/img/act_home.gif" alt=""/> <a href="../index.php?">На главную</a><br/>';
include_once ("../themes/footer.php");
?>