Strict Standards: Resource ID#36 used as offset, casting to integer (36) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#38 used as offset, casting to integer (38) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#39 used as offset, casting to integer (39) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: PHP - разделение страниц [2]
ТвойWeb » WebMaster класс » PHP/Perl » PHP - разделение страниц

Страниц (4): « 1 [2] 3 4 »
 

11. sl_play - 12 Июня, 2005 - 10:14:48 - перейти к сообщению
Тогда и я свой вариант разбиения текста на страницы выложу. здесь ведь не главное что разбивать, а главное принцип понять что на что делить....

CODE:
<?
$_GET['p']=($_GET['p'])?$_GET['p']:1;
$file=file("wer2.txt");//путь к текстовому файлу
$cou=count($file);
$line_to_page=3;
$pages=ceil($cou/$line_to_page);
$last=$_GET['p']*$line_to_page;
$first=$last-$line_to_page;

for($i=$first;$i<$last;$i++){
if(trim($file[$i]))echo trim($file[$i])."<hr size=1>";
}
for($i=0;$i<$pages;$i++){
echo "| <a href=\"?p=".(1+$i)."\" ";
if($_GET['p']==(1+$i)){echo " style=\"color:red;\" ";}
echo ">".(1+$i)."</a> ";
}
?>

12. djX - 12 Июня, 2005 - 14:22:37 - перейти к сообщению
принцип почти тотже
13. Mr. D.M.Black - 26 Июня, 2005 - 04:14:18 - перейти к сообщению
Доброго времени суток.

У меня такой вопрос: Реально ли корректно вывести, допустим, по 10 записей на страницу с условием соответствия записи?
Т.е. есть таблица:

Цитата:
id name cat_id

1 name1 2
2 name2 1
3 name3 1
4 name4 3
5 name5 1
...

При просмотре категории '1' должны выводиться записи из таблицы, соответствующие данной категории:

Цитата:
Категория 1

Name 5

Name 3

Name 2

...

Страницы: 1 [2] [3]



P.S. Использую БД txtSQL 2.2
14. Lonely wanderer - 18 Ноября, 2007 - 07:31:57 - перейти к сообщению
TvoyWeb пишет:
Ловите скрипт.
"Постраничный вывод"

Подскажите пожайлуста, как сделать чтобы данные выводились в 4 ряда и 4 столбика на странице.

В примере каждый элемент масива делится тегом <BR>, как сделать чтобы после каждого 4 массива вставлялся <tr></tr>.

Задача состоит в том что есть база в .txt где информация записана:
<td>...</td>
<td>...</td>
<td>...</td>
...
Нужно выводить таблицу в 4 колонки.

Помогите пожалуйста!
15. Lonely wanderer - 19 Ноября, 2007 - 04:04:43 - перейти к сообщению
Неужели никто не поможет? Огорчение Огорчение
16. Alone - 19 Ноября, 2007 - 05:12:18 - перейти к сообщению
Lonely wanderer
CODE:
<table>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
<td>&nbsp;</td>
</tr>
</table>
17. Lonely wanderer - 19 Ноября, 2007 - 05:40:55 - перейти к сообщению
Радость Наверное я неправильно задал вопрос.

На PHP вот на этом примере http://tvoyweb.ru/example/paginator/index.php как сделать разбивку по страницам такой таблицы?
18. Alone - 19 Ноября, 2007 - 06:03:29 - перейти к сообщению
Lonely wanderer
Ну у тебя в базе есть значения. Например так:

<td>Значение 1</td>::<td>Значение 2</td>::<td>Значение 3</td>::<td>Значение 4</td>
Вот их и подставляй в столбики-ряды.
Примерно так:
CODE:
for($n=1; $n<100; $n++)
{
list($1,$2,$3,$4) = explode("::",$file_array[$n]);
echo "....<td>......</td>...";
}
19. Lonely wanderer - 19 Ноября, 2007 - 06:14:26 - перейти к сообщению
Огорчение Туго у меня с PHP

CODE:

<?php
include_once("paginator.php");//Подключаем библиотеку
$get_param = 'index.php?action=print&t=1';//URL ссылки со всеми GET парметрами
$data = file('error.log');//читаем в массив данные из файла.
$count = sizeof($data); //всего элементов в массиве
$per_page = 25;//Сколько выводить на одну страницу.
$first = 0; // Инициализируем переменную номера элемента массива
// с которого начнется вывод данных на страницу
$end = 0; // Инициализируем переменную номера элемента массива
// до которого нужно выводить данных на страницу
$links_per_page = 7;//Сколько ссылок выводить на страницу .Только нечетные
$FirstLastLinks = TRUE;//Выводить ссылку "Первая страница" и "Последняя страница"
$PrevNextLinks = TRUE;//Выводить ссылки предыдущая и следующая страница
$Dots = TRUE;//Выводить многоточиекогда не видно ссылок на предыдущие и следующие страницы
$print = array();//Инициализируем временный массив элементов для последующего заполнения и вывода на страницу
//Получаем текущий номер страницы полученый в результате обработки $_GET['p'] парметра,
//для следующего использования в функции get_page_param()
$cur_page = (!isset($_GET['p'])) ? 0 : intval($_GET['p']);
//Вызываем функцию tw_get_param() и получаем номера элементов с которого начнется
//и до которого нужно выводить данных на страницу
tw_get_param($count,$per_page,$cur_page,$first,$end);
//Проходимся по массиву данных полученных из файла через функцию file()
for ($i=$first;$i<$end;$i++){
$num = $i+1;//Порядковый номер строки для вывода на страницу
if(!isset($data[$i])) break;//Если элемента массива с таким номером не существует,
//то выходим из цикла
//Если цикл не прерван, заносим во временный массив данные из массива $data
$print[$i] = '<b>'.$num.'.</b> '.trim($data[$i]);
}
//Создаем из массива строку разделив каждый элемент масива $print тегом <BR>
$echo_print = implode("<BR>",$print);
//Получаем линейку ссылок на страницы
$echo_paginator = tw_Print_Paginator($count,$get_param,$per_page,$links_per_page,$FirstLastLinks,$PrevNextLinks,$Dots);
//Форматируем и печатаем линейку ссылок
echo "<span style=\"font-size: 12px;\">$echo_paginator</span>";
//Печатаем данные
echo $echo_print;
?>


Подскажи пожалуйста как это сделать, сам я не сделаю. Огорчение
20. Alone - 19 Ноября, 2007 - 07:02:48 - перейти к сообщению
Эта переменная выводит все данные которые нужно засунуть в таблицу:
CODE:
$echo_print = implode("<BR>",$print);

Попробуй заменить эту строчку на этот код:
CODE:

for($n=$first; $n<$end; $n++)
{
list($a,$b,$c,$d) = explode("::",$data[$n]);
}

Вместо этого кода:
CODE:
echo $echo_print;

поставь этот:
CODE:
echo "<tr><td>$a</td><td>$b</td><td>$c</td><td>$d</td></tr>";


Соответственно в сам текстовый файл (error.log) вставь что-то такое:
Бла-бла-бла::Бла-бла-бла::Бла-бла-бла::Бла-бла-бла
Бла-бла-бла::Бла-бла-бла::Бла-бла-бла::Бла-бла-бла
Бла-бла-бла::Бла-бла-бла::Бла-бла-бла::Бла-бла-бла
Бла-бла-бла::Бла-бла-бла::Бла-бла-бла::Бла-бла-бла

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0433]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33