Русскоязычные документы веб-мастеру готовы к употреблению
Где вы зарабатываете больше всего?
Яндекс.Директ
Google Adsens
Sape
Begun
Setlinks
Mainlinks
Blogun

Теперь поговорим о постраничном выводе информации из файла (подчеркиваю из файла) а не из базы данных :-)
Что меня натолкнуло написать эту статью? Вчера в аське мой друг Oles.pwl попросил объяснить ему, как организовать постарничный вывод из файла, вот я и держу свое обещание,
тока не для одного Oles.pwl, а для всех Вас товарисщи :-)
Сразу хочу сказать, код написан Manlix'ом я пишу только пояснения к нему, ну т.е. объясняю как его организовать, для непонятливых :-)

Допустим есть у Вас файл содержащий информацию такого вида 

заголовок||статья
заголовок2||статья2
заголовок3||статья3

и так далее...

Тепрь сделаем это с выводом информации скажем по 5 на страничку, ну т.е. будем выводить по 5 строк инфы из файла
Скажем так

------------------------------------------------------

Заголовок статьи --- Тря ля ля ля ля лял 
Сама статья --- Статетываывоаылвоал

------------------------------------------------------

Теперь приступим к самому приятному, кодингу :-)

Главный файл test.php

<?php
$base="base_file.txt"; // Файл где находиться инфа

$general=file($base); //Заносим весь наш файл в массив

$lines_file=file($base); //Еще разочек занесем наш файли в массив :-)

$lines=count($lines_file); //Считаем общее количество записей в файле, ну т.е. строк.

$pmessages = file("$base");

$onlyg=2; //Сколько записей выводить на страницу

/*

Тут начинаеться самая главная часть нашего файла
Просчитываем странички :-)

*/

if (@$page == "" or $page < 0) //Если переменная $page равна пустоте, или она меньше 0
{
$page = "1"; //Тогда переменнная $page=1
}

$first = count($pmessages) - ($onlyg * ($page - 1));
$second = count($pmessages) - ($onlyg * $page) + 1;

if ($second < 1)
{
$second = 1;
}

$pages = (int) ((count($pmessages) + $onlyg) / $onlyg); //Считаем общее количество страниц

for ($onlyg = 1; $onlyg <= $pages; $onlyg++) //Загоняем все в цикл, т.е. присваемваем переменно $onlyg значение
//1 и пока она меньше или равна $pages увеличиваем ее на единичку.
{
if ($onlyg != $page) //Если $olyg не равняется $page
{
//То наши ссылки имеют такой вид
$line .= "[ <a href=\"test.php?page=$onlyg\">$onlyg</a> ]";
}
if ($onlyg == $page) //А если равняеться
{
//То такой
$line .= "[ $onlyg ]"; //Ну т.е. в выводим не в виде ссылки ту страницу где сейчас находиться пользователь
}
}


/*

Теперь выводим саму информацию

*/

for ( $i = $first-1; $i >= $second-1; $i--)
{
list($zag,$sama)=explode("||", $general[$i]); //Считываем все из файла и разделяем данные при помощи explode а разделитель как вы помните у нас ||
$id = $i;
$id++;
echo "Заголовок статьи --- $zag<br> Сама статья --- $sama<br><hr>";
}

echo "$line<br>"; //Выводим ссылки

echo "Всего статей - <font color=red>$lines</font>."; //Выведем информацию пользователю о общем количестве записей
?>

Ну вот в принципе и все.

Автор статьи: Александр Лысенко [ http://www.Ekibastuz.de ]

Комментарии

Имя 

 

[15.10.08] Урок фотошоп Рисование фракталов

[14.10.08] Плагины для Photoshop Добавлено парочку новых.

[13.10.08] Пиксельные шрифты Добавлено 11 шрифтов.

[10.10.08] Урок фотошопа Как нарисовать дерево.

[05.10.08] JavaScript Новая документация.

[03.10.08] Plug-ins Пару новых плагинов для фотошопа.

[01.10.08] Урок фотошопа Старая фотография.

[01.10.08] Урок фотошопа Сказочный текст.

[30.09.08] PERL статьи 3 новых интересных статьи.

[30.09.08] PHP статьи Полосатая таблица.

[29.09.08] WEB документация На сайте появились учебники и книги.

[18.09.08] Урок Фотошопа Ледяной текст 2.

[16.09.08] Урок Фотошопа Mp3 Player.

[15.09.08] Урок Фотошопа Огненный текст.

Все новости
Рейтинг@Mail.ru
Александр Акимов
ICQ:
Mail: odvd@ya.ru