|
|
|
| вот немного модифицировал скрипт постраничной навигации для того, чтоб каждый раз не прописавыть имя страницы
<div class="content">
<?php
if (!defined("NET"))die();
echo "<div id=\"write\"><a href=\"write.php\">написать сообщение</a></div>";
include "db/dbconnect.php";
$url=$_SERVER['PHP_SELF'];
$filename = basename($url);
$_SESSION['url'] = "$filename";
$num = 5;
$page = $_GET['page'];
$result = @mysql_query("SELECT COUNT(*) FROM guestbook");
$posts = @mysql_result($result,0);
if(!isset($posts) || $posts == 0) {
echo "Нет сообщений";
}
else {
$total = intval(($posts - 1) / $num) + 1;
$page = intval($page);
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;
$result = @mysql_query("SELECT * FROM guestbook ORDER BY id_guestbook DESC LIMIT $start, $num");
echo "<div id=\"content\">";
while ( $postrow[] = @mysql_fetch_array($result));
for($i = 0; $i < $num; $i++)
{
if (isset($postrow[$i]['id_guestbook'])) {
echo "<table class=\"message\" cellpadding=\"10px\" cellspacing=\"0\" border=\"0\" >";
$name = $postrow[$i]['name'];
$name = htmlspecialchars(stripslashes($name));
$name = str_replace("'","`",$name);
echo "<tr><td class=\"name\"><strong>имя: </strong><i>".$name."</i></td></tr>";
$city = $postrow[$i]['city'];
$city = htmlspecialchars(stripslashes($city));
$city = str_replace("'","`",$city);
echo "<tr><td class=\"city\"><strong>город: </strong><i>".$city."</i></td></tr>";
$message = $postrow[$i]['message'];
$message = htmlspecialchars(stripslashes($message));
$message = str_replace("'","`",$message);
echo "<tr><td class=\"message\"><strong>сообщение: </strong><br /><i>".$message."</i></td></tr>";
$date_message = $postrow[$i]['date_message'];
echo "<tr><td class=\"d_m\"><strong>от: </strong><br /><i>".$date_message."</i></td></tr>";
$answer = $postrow[$i]['answer'];
$answer = htmlspecialchars(stripslashes($answer));
$answer = str_replace("'","`",$answer);
echo "<tr><td class=\"answer\"><strong>ответ: </strong><br /><i>".$answer."</i></td></tr>";
$date_answer = $postrow[$i]['date_answer'];
echo "<tr><td class=\"d_a\"><strong>от: </strong><br /><i>".$date_answer."</i></td></tr>";
echo "</table>";
}
}
echo "</div>
<div align=\"center\" class=\"pag\">";
if ($page != 1) $pervpage = '<a class="pag" href= ./'.$filename.'?page=1><<</a>
<a class="pag" href= ./'.$filename.'?page='. ($page - 1) .'><</a> ';
if ($page != $total) $nextpage = ' <a class="pag" href= ./'.$filename.'?page='. ($page + 1) .'>></a>
<a class="pag" href= ./'.$filename.'?page=' .$total. '>>></a>';
if($page - 2 > 0) $page2left = ' <a class="pag" href= ./'.$filename.'?page='. ($page - 2) .'>'. ($page - 2) .'</a> ';
if($page - 1 > 0) $page1left = ' <a class="pag" href= ./'.$filename.'?page='. ($page - 1) .'>'. ($page - 1) .'</a> ';
if($page + 2 <= $total) $page2right = ' <a class="pag" href= ./'.$filename.'?page='. ($page + 2) .'>'. ($page + 2) .'</a>';
if($page + 1 <= $total) $page1right = ' <a class="pag" href= ./'.$filename.'?page='. ($page + 1) .'>'. ($page + 1) .'</a>';
echo $pervpage.$page2left.$page1left.'<b> ' .$page. ' </b>'.$page1right.$page2right.$nextpage;
}
?>
</div>
|
так можно делать?
и еще а как его можно модифицировать до функции или класа? | |
|
|
|
|
|
|
|
для: Bvz
(17.12.2008 в 21:38)
| | Ну вот вариант. Тут, на форуме собрал.
<?php
include("config.php");
$num = 10;
function list_page($num)
{
$page = isset($_GET['page'])?$_GET['page']:null;
$result = mysql_query("SELECT COUNT(*) AS cnt FROM `table` ");
$posts = mysql_result($result,0,'cnt');
$total = intval(($posts - 1) / $num) + 1;
$page = intval($page);
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;
$res = mysql_query("SELECT * FROM `table` ORDER BY `id` DESC LIMIT ".$start.", ".$num."");
while ( $postrow[] = mysql_fetch_array($res));
$table = "<table>";
for($i = 0; $i < $num; $i++)
{
$table .= "<tr>
<td>".$postrow[$i]['text1']."</td>
<td>".$postrow[$i]['text2']."</td></tr>";
}
for ($tt=1;$tt<=$total;$tt++)
{
$l1=$tt*$num-$num+1;
$l2=$tt*$num;
if($page == $tt )
$menu.= "<b>[".$l1."-".$l2."]</b>";
else
$menu.="<a href='?page=".$tt."' />[".$l1."-".$l2."]</a>";
}
$table .= "<tr><td colspan='2' style='text-align:center' >".$menu."</td></tr>
</table>";
return $table;
}
echo list_page($num);
|
| |
|
|
|
|
|
|
|
для: Николай2357
(17.12.2008 в 22:20)
| | спасибо буду изучать )) | |
|
|
|