<!--kategorilere gore haberler -->
<div class="hbrler_ust">KATEGORİ HABERLERİ</div>
<div class="hbrler_orta">
<?php
function kisalt($degisken, $max_uzunluk){
if (strlen($degisken) > $max_uzunluk){
$degisken = substr($degisken, 0, $max_uzunluk);
$shn = strrpos($degisken, " ");
if($shn === false) {
return substr($degisken, 0, $max_uzunluk)."…";
}
return substr($degisken, 0, $shn)."…";
}else{
return $degisken;
}
}
$kid=@$_GET['id']; // Kategoriden gelen İd
$limit=9;
$oku=mysql_query("select * from haberler where yayinla='1'");
$sayi =mysql_num_rows($oku);
$sayfasayisi=$sayi/$limit;
$sonkayit=($sayfasayisi-1)*$limit;
if(!$habersayfa==''){$sonkayit=($habersayfa-1)*$limit;}
else {$sonkayit=0;}
$oku=mysql_query("select * from haberler where yayinla='1' AND kid='$kid' order by id desc limit $sonkayit,$limit");
$sayfasayisi=ceil($sayi/$limit);
while ($vericek=mysql_fetch_array($oku)){
$id=$vericek['id'];
$baslik=$vericek['baslik'];
$icerik=kisalt($vericek['icerik'],50);
$icerik=strip_tags($icerik);
$tarih=$vericek['tarih'];
$resim_yolu=$vericek['resim_yolu'];
$izlenme=$vericek['izlenme'];
echo " <div class=\"haber\">\n";
echo " \n";
echo " <div class=\"haber_resim\">\n";
echo " <a href='haberoku.php?sayfa&id=$id'><img width=\"180\" height=\"110\" src=\"haber_resimleri/$resim_yolu\" class=\"$baslik\" alt=\"$baslik\" title=\"$baslik\" /></a>\n";
echo " </div>\n";
echo " <div class=\"haber_ozet\">\n";
echo " <h3><a href=\"~p=89.html\"><a href='haberoku.php?sayfa&id=$id'>$baslik</a></a> </h3>\n";
echo " <p>$icerik\n";
echo "<br><b>Okuma :</b> $izlenme <br> <b>Ekleme Tarihi:</b>$tarih\n";
echo "<a href='haberoku.php?sayfa&id=$id'>[Devamı]</a></p></div>\n";
echo " </div>\n";
}
?>
<div class="clear"></div>
<div class="sayfalama">
<div class="sayfalama_sol">
<div class='zayfala'>
<span class='sayfalar'>
<?php
echo "<center>";
if($habersayfa==1){echo "";} else { echo "<a href=kategori.php?sayfa=haberler&habersayfa=1>İlk </a>";}
for($i=1; $i <= $sayfasayisi; $i++) {
if($habersayfa==$i){echo " $i ";} else {
echo "<a href=kategori.php?sayfa=haberler&habersayfa=$i> $i </a>"; }
}
$i=$i-1;
if($habersayfa==$sayfasayisi){ echo"";} else {echo "<a href=kategori.php?sayfa=haberler&habersayfa=$i> Son</a>";}
echo "</center>";
?>
</div>
</div>
<div class="sayfala_sag">
<a href="tumhaberler.php">TÜM HABERLER</a></div>
</div>
<!--sayfala bitti-->
</div>
<div class="hbrler_alt">
</div>
<!--hbrler bitti--> Php Sayfalama Problemi ?
8
●1.038
- 19-11-2012, 11:10:01Kimlik doğrulama veya yönetimden onay bekliyor.Kendim yapmaya çalıştığım haber sitesi yada başka bir amaçlada kullanabilecek projemle ilgili olarak haberleri kategorilere ayırdım fakat sayfalama olayını yapamadım, baya bi uğraştım ama olmadı, hazır olarak nette yayınlananları deniyorum çalışıyor fakat benimki niye çalışmıyor anlamadım, çok iyi değilim php de, belki küçük bir ayrıntıyı kaçırıyorumdur bilmiyorum.
- 19-11-2012, 13:53:21Kategorilerin olduğu sayfadaki kodlar şu şekilde
<?php $cek=mysql_query("select * from haber_kategori order by id desc"); while($veri=mysql_fetch_array($cek)){ $id=$veri['id']; $baslik=$veri['kategori']; ?> <ul id="menu-hizli-menu" class="menu"><li id="menu-item-143" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-143"><a href="kategori.php?habersayfa&id=<? echo $id ?>"><? echo $baslik ?></a></li> <? } ?>
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 13:53:21 -->-> Daha önceki mesaj 12:27:16 --
Şu şekilde çalışıyor fakat böylede kategorideki haberleri getirtemiyorum, manuel olarak yazınca geliyor, yani kategori id sini yazınca (where kid='9' )
<?php if (empty($_GET["syf"])){ $syf=1; }else{ $syf=$_GET["syf"]; } $sorgu=mysql_query("select * from haberler"); $limit=9; $kayitSayisi=mysql_num_rows($sorgu); $sayfaSayisi=ceil($kayitSayisi/$limit); $baslangic=($syf*$limit)-$limit; $sorgu=mysql_query("select * from haberler where kid='9' order by id desc limit $baslangic,$limit"); while($kayit=mysql_fetch_array($sorgu)){ $baslik=$kayit['baslik']; $id=$kayit[id]; echo "<a href='haberoku.php?sayfa&id=$id'>"; echo "$baslik <br>"; echo "</a>"; } ?>
Sayfalama kısmıda çalışan
<div class='wp-pagenavi'> <span class='pages'> <?php echo '<center>'; if ($sayfaSayisi>1){//Tek sayfa ise sayfalama yapmaya gerek yok for ($i=1;$i<=$sayfaSayisi;$i++){ echo '<a href="zayfalama.php?sayfa=listele&syf='.$i.'"'; if ($syf==$i){ echo 'class="syf_aktif"';}//Bulunduğumuz sayfayının linkine syf_aktif sınıfını geçiriyoruz. echo '>'.$i.'</a>'; } echo '</center>'; } ?> </div> - 21-11-2012, 17:54:36
$sorgu=mysql_query("select * from haberler"); $limit=9; $kayitSayisi=mysql_num_rows($sorgu); $sayfaSayisi=ceil($kayitSayisi/$limit); $baslangic=($syf*$limit)-$limit; $sorgu=mysql_query("select * from haberler where kid='9' order by id desc limit $baslangic,$limit");Buradaki kodlara dikkat ederseniz; tüm haberlerin sayısını limite bölüp sadece 9'uncu kategorideki haberleri listeliyorsunuz. Sayfaların fazla gözükmesinin sebebi bu.