[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: разделение сообщений по страницам.
Forever
Так вот, осуществляю разделение сообщений по страницам, не пойму, как сделать, чтобы если количество страниц в теме перевалит за определенное значение (к примеру 10), то после этих десяти шел номер последней.

$db = new safeMysql();

$per_page = 10;

//получаем номер страницы и значение для лимита
$cur_page = 1;
if (isset($_GET['page']) && $_GET['page'] > 0)
{
$cur_page = $_GET['page'];
}
$start = ($cur_page - 1) * $per_page;

//выполняем запрос и получаем данные для вывода
$sql = "SELECT SQL_CALC_FOUND_ROWS text,date,writer FROM messages where reader IN ('".$login."','".$cont."') AND writer IN ('".$cont."','".$login."') ORDER BY date LIMIT ?i, ?i";
$data = $db->getAll($sql, $start, $per_page);
$rows = $db->getOne("SELECT FOUND_ROWS()");

//узнаем общее количество страниц и заполняем массив со ссылками
$num_pages = ceil($rows / $per_page);

// зададим переменную, которую будем использовать для вывода номеров страниц
$page = 0;


//а дальше выводим в шаблоне днные и навигацию:

foreach ($data as $row):

$strW = $row['writer'];

//Создать ссылку на person.php с id-value в URL

$strTEXT = "<p>".$strW. " в ".$row['date']."</p> <p>".$row['text']. "</p>";

//Листинг сообщений
echo $strTEXT;

endforeach?>

</div>
</td>
</tr>

<tr>
<td
style="height: 30px" >
Страницы:

<?php while ($page++ < $num_pages):
//if ($page == $cur_page):
//$page;
//else:


echo "<a href=?page=".$page."&contact=".$cont.">".$page."</a>";
//endif ;
endwhile?>
Быстрый ответ:

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