Doğru Cevap
-
for döngünü şöyle değiştirip dene bakalım...
print ''.$page.''; //den sonra //önceki sayfa... if ($page > 1) { $onceki_sayfa = $page - 1; echo '<a href="index.php?page='.$onceki_sayfa.'"> Önceki </a>'; } //sayfa numaraları $range = 3; for ($i = ($page - $range); $i < (($page + $range) + 1); $i++) { if (($i > 0) && ($i <= $sayfa_sayisi)) { if ($i == $page) { echo " <strong>$i</strong> "; } else { echo '<a href="index.php?page='.$i.'">'.$i.'</a>'; } } } //sonraki sayfa... if ($page != $sayfa_sayisi) { $sonraki_sayfa = $page + 1; echo '<a href="index.php?page='.$sonraki_sayfa.'"> Sonraki </a>'; }
Cevaplar
-
for ($i=1; $i<=$sayfa_sayisi; $i++) { echo '<a href=index.php?page='.$i.'>'.$i.'</a>'; }
Bu kısmını 3 duruma göre yapman lazım.
ilk durum; $sayfa_sayisi<=4 ise
ikinci durum; senin yaptigin kısım ama 1 den sona kadar değil, bulundugun sayfanın 3 eksiginden bulundugun sayfanın 3 fazlasına kadar
üçüncü durum; son sayfaya 4 sayfa ve daha az kaldıysa ayrı yapman lazım
yani;
if ($bulundugunsayfa<=4){ for ($i=1; $i<=7; $i++) { echo '<a href=index.php?page='.$i.'>'.$i.'</a>'; } } if ($bulundugunsayfa>4 and $bulundugunsayfa<$sayfa_sayisi-4){ for ($i=$bulundugunsayfa-3; $i<=$bulundugunsayfa+3; $i++) { echo '<a href=index.php?page='.$i.'>'.$i.'</a>'; } } if ($bulundugunsayfa>=$sayfa_sayisi-4){ for ($i=$bulundugunsayfa-3; $i<=sayfa_sayisi; $i++) { echo '<a href=index.php?page='.$i.'>'.$i.'</a>'; } }
typo, sytax error falan yapmış olabilirim. sen kendine göre düzenlersin.-
spywaredz
<?php include('mysql.php'); $page=$_GET['page']; if ($page=="" || !is_numeric($page)) { $page=1; } $kacar=10; $kayit_sayisi=mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM problem")); $sayfa_sayisi=$kayit_sayisi['0']/$kacar; if ($kayit_sayisi%$kacar!=0) { $sayfa_sayisi++; } $nerden=($page*$kacar)-$kacar; $sorgu=mysql_query("SELECT * FROM problem WHERE lang = 2 ORDER BY id DESC LIMIT $nerden,$kacar"); while ($veri=mysql_fetch_array($sorgu)) { $title=$veri["title"]; $id=$veri["id"]; } print ''.$page.'<br>'; for ($i=1; $i<=$sayfa_sayisi; $i++) { if ($page<=4){ for ($i=1; $i<=7; $i++) { echo '<a href=index.php?page='.$i.'>'.$i.'</a>'; } } if ($page>4 and $page<$sayfa_sayisi-4){ for ($i=$page-3; $i<=$page+3; $i++) { echo '<a href=index.php?page='.$i.'>'.$i.'</a>'; } } if ($page>=$sayfa_sayisi-4){ for ($i=$page-3; $i<=sayfa_sayisi; $i++) { echo '<a href=index.php?page='.$i.'>'.$i.'</a>'; } } }?>
böyle yaptım ama olmadı :(11 yıl önce yazılmış
-