[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Постраничный вывод
Mikle2013
Здравствуйте!
Есть такая задачка:
в файле text.txt имеется какой-либо текст. вывести содержимое файла на экран постранично по 300 символов на страницу. (должны быть реализованы ссылки постраничного перехода (1,2,3...))
Очень прошу написать под неё код и кратко описать взаимосвязь
Только сегодня начал изучать php и столкнулся с такой задачей, буду очень рад Вашему ответу
Turboworld1
По 300 символов на страницу? Или всё же строк?
Готовый код писать, думаю, никто не будет. Это же раздел взаимопомощи, а не готовых решений. Приводите код, который уже написали, а мы подскажем, что не так wink.gif
GET
Цитата
Очень прошу написать под неё код

Цитата
Только сегодня начал изучать php


Так ты ничего не изучишь если за тебя будут код писать.

_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
Guest
В условиях именно 300 символов, тогда сегодня напишу код, посмотрите плиз!
Mikle2013
Друзья, здравствуйте!
С помощью этого кода, содержимое моего блокнота выводится по 3 страницы,
но не знаю как сделать чтобы выводилось по 300 символов на страницу
<?php
$data = file("text.txt");
$new_data = array_merge($data);
$result = array_unique($new_data);
shuffle($result);
$count = count($result);
$list = 7;

if (empty($_GET['page'])) {
$page = 1;
} else {
$page = (int) $_GET['page'];
}

$j = ($count-1)-(($page-1)*$list);
$i = $j-$list;



for(; $i<$j && $j>=0; $j--) {



echo "$result[$j]<br>";


}
echo '<font color="#ffffff" size="5">Страницы:&nbsp;</font>'."\n";
$all = ceil($count/$list);
for ($i=1;$i<=$all;$i++) {
if ($page==$i) {
echo '<strong><font color="#ffffff">'.$i.'</font></strong> ';
} else {
echo '<a href="'.$_SERVER['PHP_SELF'].'?page='.$i.'">'.$i.'</a> '."\n";
}
}

?>
Игорь_Vasinsky
а чё там сложного?
//кол-во строк на страницу
$count_strings = 20;
//Оопределили страницу
$page = isset($_GET['p']) ? (int)$_GET['p'] : 1;
//прочитали файл в массив по строчно
$file = file_exists('text.txt') ? file('text.txt') : array();
//посчитали сколько вообще страниц получится
$count_all_pages = ceil(count($file) == 0 ? 1 : count($file)/$count_strings);

foreach($file as $k=>$v){
if($page == 1)
echo $v.'<br />';
elseif($k > $page*$count_strings - $count_strings && $page != 1)
echo $v.'<br />';

if($k == $page*$count_strings)
break;
}
//Сам пагинатор
for($i=1; $i<$count_all_pages; $i++){

echo $i == $page ? '<b>'.$i.'</b>': '<a href="/?p='.$i.'">['.$i.']</a>';
}


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.