Kodunu şu şekilde düzenledim. Denemedim ama inşallah hatası yoktur.
blog.php dosyası:
<?php
$sayfa = @abs(intval( $_REQUEST['sayfa'] ) ); // sayfa numarası al.
$limit = 10; // sayfa başına gösterilecek kayıt sayısı.
function sayfalama( $limit, $sayfano, $satir_sayisi=0, $sayfaadi='index.php', $adresdeger='' )
{
$sayfalama = '';
if($satir_sayisi > $limit)
{
$sayfa_sayisi = $satir_sayisi / $limit;
$sayfa_sayisi = ceil($sayfa_sayisi);
if($sayfano == $sayfa_sayisi)
{
$to = $sayfa_sayisi;
} elseif($sayfano == $sayfa_sayisi - 1)
{
$to = $sayfano + 1;
} elseif($sayfano == $sayfa_sayisi - 2)
{
$to = $sayfano + 2;
} else {
$to = $sayfano + 3;
}
if($sayfano < 4)
{
$from = 1;
} else {
$from = $sayfano - 3;
}
if (4 < $sayfano)
$sayfalama .= ' <b><a class="pagenav" href="'.$sayfaadi.$adresdeger.'"><b>1</b></a> ...</b> ';
for($i=$from; $i <= $to; $i++)
{
if($i == $sayfano)
{
$sayfalama .= ' <b class="pagenav" title="'.$i.'. sayfadasınız.">'.$i.'</b> ';
} else {
$sayfalama .= ' <a class="pagenav" href="'.$sayfaadi.'&sayfa='.$i.$adresdeger.'" title="'.$i.'. sayfa »">'.$i.'</a> ';
}
}
if ($to < $sayfa_sayisi)
{
$sayfalama .= ' <b>... <a class="pagenav" href="'.$sayfaadi.'&sayfa='.$sayfa_sayisi.$adresdeger.'" title="'.$sayfa_sayisi.'. sayfa »">'.$sayfa_sayisi.'</a></b> ';
}
}
if ( ($sayfano >= $sayfa_sayisi) && $sayfalama ) {
$sayfalama .= ' <b class="pagenav" title="Son sayfadasınız.">Sonraki sayfa »</b> ';
} else {
$syf = $sayfano+1;
$sayfalama .= ' <a class="pagenav" href="'.$sayfaadi.'&sayfa='.$syf.$adresdeger.'" title="' . $syf . '. sayfa »">Sonraki sayfa »</a> ';
}
if( $satir_sayisi <= $limit )
{
$sayfalama = 'Sayfa 1';
}
return $sayfalama;
}
mysql_connect ("localhost", "blog", "blog") or die ('I cannot connect to the database because: ' . mysql_error());
mysql_select_db ("blog");
mysql_query("SET NAMES 'latin5'");
$say = mysql_query ("SELECT * FROM blog");
$count = mysql_num_rows( $say );
if( empty( $sayfa ) || $sayfa > ceil( $count / $limit ) ) {
$sayfa = 1;
$baslangic = 0;
} else {
$baslangic = ( $sayfa - 1 ) * $limit;
}
$sorgu = mysql_query ( "SELECT * FROM blog LIMIT ".$baslangic.", ".$limit );
$rows = mysql_fetch_object ( $sorgu );
foreach ( $rows as $row ) {
echo '<p class="bas"> '.$row->baslik.'</p><hr class="cizgi"> <p class="continut"> '.$row->yazi.'</p><hr class="cizgi"> <br>'."\n";
}
?>
<p align="center">Sayfalar: <?php echo sayfalama( $limit, $sayfa, $count, 'blog.php', '' ); ?></p>