Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Yazılarımı Sayfalamak istiyorum.

Php ile yeni tanışıyorum. Öğrendiğim kadarıyla bi blog sistemi yapmaya çalışıyorum. Tabi bunu bir standarda uygun olarak değilde kendi mantıgımla yapmaya çalışıyoum. Çünkü php'yi tam ögrenmedim. Mysql'den çağırdıgım yazılarımı sayfalamk istiyorum. Yardımcı olur mu diye kodları da yazayim.


<?php
	$connection=mysql_connect("localhost","cms","gncfb1907");
	if(!$connection)
	{
		die("Veritabanı Bağlantı Hatası : " . mysql_error());
	}
	$db_select=mysql_select_db("cms",$connection);
	if(!$db_select)
	{
		die("Veritabanı Tablo Seçim Hatası : " . mysql_error());
	}
	mysql_query("SET NAMES 'latin5'");
	mysql_query("SET CHARACTER SET latin5");
	mysql_query("SET COLLATION_CONNECTION = 'latin5_turkish_ci'");
?>
<?php include("header.php") ?>
    <div id="templatemo_menu">
    	<div class="home"><a href="index.php"></a></div>
        <ul>
		<?php
			$result=mysql_query("SELECT * FROM menuler",$connection);
			if(!$result)
			{
				die("Veritabanı Sorgu Hatası : " . mysql_error());
			}
			while($row=mysql_fetch_array($result))
			{
				echo "<li><a href='" . $row["adres"] . "'><span>" . $row["menu_ad"] . " </span>" . $row["menu_aciklama"] ."</a></li>";
			}
		?>
        </ul>    	
    </div> <!-- end of templatemo_menu -->
    <div id="templatemo_content_wrapper">
    	<div id="templatemo_content_top"></div>
        <div id="templatemo_content">
		
			<?php
			    
				$result=mysql_query("SELECT * FROM sayfalar WHERE pozisyon!=0",$connection);
				if(!$result)
				{
					die("Veritabanı Sorgu Hatası : " . mysql_error());
				}
				while($row=mysql_fetch_array($result))
				{
					echo "<h2>" . $row["baslik"] . "</h2>";
					echo "" . $row["icerik1"] ."..";
					echo "<div class='button'><a href='content.php?sayfa_id=" . $row['sayfa_id'] . "'><span>»</span> Devamını Oku...</a></div>";
				}
			?>
        	<div class="cleaner"></div>
            
            
            
        </div>
        <div id="templatemo_content_bottom"></div>
	</div>
    
<?php include("footer.php") ?>
<?php
	if(isset($connection))
	{
		mysql_close($connection);
	}
?>

"temlatemo_content" div'indeki çektiğim yazıları sayfalamk istiyorum. Şimdiden teşekkür ederim.
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Doğru Cevap

  • komancero adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    7 cevap - 5 soru
    Öncelikle sayfada kaç adet içerik göstereceğini belirtmen gerekiyor.

    $icerikSayisi = 5 // 5 adet içerik görüntüleneceğini varsayalım.
    $icerikSql = mysql_query("SELECT COUNT(*) as toplam FROM sayfalar"); // sayfalar tablosunda kaç adet satır olduğunu sorgulattık.
    $icerikSayisiBul = mysql_fetch_assoc($icerikSql);
    $icerikSayisi = $icerikSayisiBul['toplam']; // içerik sayısını bulduk.
    $toplamSayfaSayisi = ceil($icerikSayisi / $icerikSayisi); // içerik sayısını sayfada görüntülenecek miktara böldük ve ceil fonksiyonuyla sayıyı yuvarladık. 5 içerik varsa ve 2 sayfada görüntülenecekse böldüğümüzde 2.5 çıkacak ve sorun olacak bu yüzden ceil ile bunu 3 yaptık.
    $sayfa = $_GET['sayfa'];
    if($sayfa < 1){
    $sayfa = 1; // Get methoduyla sayfa değerini aldık ve 1den küçükse 1e eşitledik.
    }
    if($sayfa > $toplamSayfaSayisi){
    $sayfa = $toplamSayfaSayisi; // get methodundaki sayfa değeri toplam sayfa sayısından büyükse sorun olacak bu yüzden bunu da toplam sayfa sayısına eşitledik.
    }
    $limit = ($sayfa - 1) * $icerikSayisi;
    $listeleSql = mysql_query("SELECT * sayfalar LIMIT $limit, $icerikSayisi");
    while($icerik = mysql_fetch_assoc($listeleSql)){
    echo "<h2>".$icerik['baslik']."</h2>";
    echo "".$icerik['icerik1']."..";
    echo "<div class='button'><a href='content.php?sayfa_id=" . $row['sayfa_id'] . "'><span>»</span> Devamını Oku...</a></div>";
    //içerik listelendi
    }
    
    for($i = 1; $i <= $toplamSayfaSayisi; $i++){
    if($sayfa == $i){
    echo $i . ' ';
    }else{
    echo '<a href="?sayfa='.$i.'">'.$i.'</a>';
    }
    }
    
    • phianes adlı üyenin fotoğrafı phianes
      bunu direk "temlaptemo_content" div'inin içine yapıştırsam çalışır mı?
      10 yıl önce yazılmış
    • komancero adlı üyenin fotoğrafı komancero
      Bunu yazmadan önce denemiş olman gerekirdi aslında :) Dene önce çalışmazsa hata verirse bakarız bir hal çaresine.
      10 yıl önce yazılmış
    • phianes adlı üyenin fotoğrafı phianes
      40.satırda syntax hatası var. 40.satırdan kastım. icerikSql'i tanımlarken.
      10 yıl önce yazılmış 10 yıl önce güncellenmiş
    • komancero adlı üyenin fotoğrafı komancero
      $icerikSayisi = 5 burada noktalı virgül koymamışım. Hata o.
      10 yıl önce yazılmış
    • llorca adlı üyenin fotoğrafı llorca
      Kendi mantığınızla PHP yi kendiniz yazarak yapmaya çalışıyorsunuzda bu temlaptemo_content nedir onu anlamadım?
      10 yıl önce yazılmış
    • komancero adlı üyenin fotoğrafı komancero
      Div'in id'si ondan bahsediyor.

      <div id="templatemo_content">
      10 yıl önce yazılmış
    • phianes adlı üyenin fotoğrafı phianes
      while($icerik = mysql_fetch_assoc($listeleSql)){
      

      bu satırda da hata var hocam.
      10 yıl önce yazılmış

Cevaplar

  • Actionsee adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    10 yıl önce güncellenmiş
    16 cevap - 22 soru
    https://www.google.com/#hl=tr&q=php+sayfalama&fp=1
  • phianes adlı üyenin fotoğrafı
    10 yıl önce yazılmış
    2 cevap - 2 soru
    biraz düzenledim sorunumu çözdüm eyvallah :)