Проблема в том что нужно нужно правильно выбрать новости из файла, т.е. например текущий id страницы 1 (счет страниц начинается с 0), всего нужно выводить 4 записи, а в файле 6 новостей, тогда скрипт отсчитывает 1 новость до 1 новости и 3 после и отдает результат.
Вот, вроде обяснил как смог, надеюсь поймете.

Спустя 1 день, 18 часов, 5 минут, 26 секунд (17.11.2010 - 12:20) fire написал(а):
ап темы
Спустя 14 минут, 7 секунд (17.11.2010 - 12:34) m4a1fox написал(а):
У вас новости в БД находятся? И что значит в !!--сеаризованом виде--!!?
Спустя 4 минуты, 23 секунды (17.11.2010 - 12:39) kovaldm написал(а):
В сериализованном, наверное...
Спустя 3 минуты, 19 секунд (17.11.2010 - 12:42) sharki написал(а):
Лучше конечно же держать все новости в БД, после того как организуешь правильную структуру БД, и сделаешь между ними связь, будет намного легче..там ты просто подаешь пару запросов в одном, и все, всё что ты хочешь он тебе выведет.
Спустя 2 минуты, 55 секунд (17.11.2010 - 12:45) m4a1fox написал(а):
<?это пример моего вывода новостей из БД! Насколько он безопасен и правилен с точки зрения опытных программистов не знаю. Но - он работает"
$query = "SELECT * FROM `you_table` ORDER BY date DESC LIMIT 6";
$id = mysql_query($query);
if(!$id) exit("Ошибка - ".mysql_error());
while($ind=mysql_fetch_array($id))
{
echo "<li type=1><b><a href=edit_you_mail.php?ind=$ind[id]><img src='img/edit.gif'> $ind[title] </a></b> <span class='date'>Дата: $ind[date_now] | Время: $ind[time]</span></li>";
}
?>
Спустя 5 часов, 55 минут, 24 секунды (17.11.2010 - 18:40) fire написал(а):
Цитата |
У вас новости в БД находятся? |
все данные хранятся в файле
Цитата |
В сериализованном, наверное... |
верно :)
Цитата |
Лучше конечно же держать все новости в БД, после того как организуешь правильную структуру БД, и сделаешь между ними связь, будет намного легче..там ты просто подаешь пару запросов в одном, и все, всё что ты хочешь он тебе выведет. |
не хотелось бы использовать в данном случае mysql или ему подобные бд
Чтоб было более понятно выложу еще код
index.php - файл отвечающий за вывод новостей
Свернутый текст
<?php
$file = file ('text.txt');
$page = !empty($_GET['page'])?$_GET['page']:0;
if (isset($page)) {
$content = unserialize( $file[$page] );
}
//$related_news = related_news(4,$file,$page);
//$paginator = paginator ($page);
include 'template.tpl';
?>
text.txt - здесь хранятся новости
Свернутый текст
a:4:{s:8:"keywords";s:4:"keys";s:11:"description";s:4:"desc";s:5:"title";s:5:"title";s:4:"body";s:23:"body das asd sadsdsadas";}
a:4:{s:8:"keywords";s:4:"keys";s:11:"description";s:4:"desc";s:5:"title";s:5:"title";s:4:"body";s:23:"body das asd sadsdsadas";}
template.tpl - файл шаблона
Свернутый текст
всякий html
<?php echo $content['title']; ?>
<?php echo $content['body']; ?>
всякий html
Спустя 19 минут, 22 секунды (17.11.2010 - 19:00) kovaldm написал(а):
В text.txt лежит массив
скрипт выводит это
Что изменить хочешь?
keywords=>keys
description=>desc
title=>title
body=>body das asd sadsdsadas
скрипт выводит это
titlebody das asd sadsdsadas
Что изменить хочешь?
Спустя 6 минут, 19 секунд (17.11.2010 - 19:06) fire написал(а):
kovaldm, из text.txt нужно зделать выборку соседних записей (сгенирировать ссылки на них), подробнее в 1 посте.
Спустя 17 минут, 41 секунда (17.11.2010 - 19:24) kovaldm написал(а):
Тогда массив неправильно записан, ключами должны быть id новости, то есть массив должен иметь вид
0=>тра-ла-ла
1=>тро-ло-ло
2=>тра-ля-ля
3=>жвадпьпо
Спустя 12 минут, 7 секунд (17.11.2010 - 19:36) fire написал(а):
Немного недопонял что ты имеешь ввиду, весь txt это считай и есть массив, типа
Цитата |
0 => массив с новостью 1 => массив с новостью 2 => массив с новостью |
или ты предлагаешь сменить
Цитата |
keywords=>keys description=>desc |
на
Цитата |
0=>keys 1=>desc |
нипанятна вообщем
Спустя 8 минут, 42 секунды (17.11.2010 - 19:45) kovaldm написал(а):
Цитата |
весь txt это считай и есть массив, типа |
Тогда уж такой
array[0]['keywords']=>бла бла бла
array[0]['description']=>тра-ла-ла
То есть многомерный.
Только записан как несколько отдельных массивов. Я бы сначала создавал массив, а потом сериализовал/записывал его, тогда придется искать отдельную запись в массиве, а не в файле.