• 18-03-2019, 12:25:15
    #1
    page.php?=icerik-adi olarka içeriklerimi göstermek istiyorum, pdo ile içeriği ana sayfaya alıyorum daha sonra ana sayfadan içeriğe git butonuna tıklatıp yönlendiriyorum page.php?=icerik-adi olarak gittiği yerde içerikleri nasıl gösterebilirim ?
  • 18-03-2019, 12:28:33
    #2
    fatihsyn adlı üyeden alıntı: mesajı görüntüle
    page.php?=icerik-adi olarka içeriklerimi göstermek istiyorum, pdo ile içeriği ana sayfaya alıyorum daha sonra ana sayfadan içeriğe git butonuna tıklatıp yönlendiriyorum page.php?=icerik-adi olarak gittiği yerde içerikleri nasıl gösterebilirim ?
    Öncelikle tablonu şu şekilde düşünelim.

    yazi_id
    yazi_baslik
    yazi_sef_baslik

    Örnek bir konu girilmesi gerekirse.

    id = 1
    Başlık = Php Dersleri
    Sef başlık = php-dersleri


    $baslik = $_GET['sef_baslik'];
    $sorgu = $db->prepare("SELECT * FROM yazilar WHERE yazi_sef_baslik=:baslik");
    $sorgu->execute(array(':baslik' => $baslik));
    
    if($sorgu->rowCount()){
    
    $row = $sorgu->fetch(PDO::FETCH_ASSOC);
    
    echo $row["yazi_baslik"]. " Yazısına hoşgeldiniz";
    
    }else{
    
    echo "Böyle bir konu yok";
    }
    Şeklinde gösterebilirsiniz.


    ÖNERİ : Bir yazıyı sadece sef linke göre kontrol ettirip çekmeyin bence. Hem seflink hem de id kontrol edilerek çekmeniz daha sağlıklı olacaktır. Böylelikle aynı konudan 2 tane açsanız bile çakışma yaşanmayacak aynı zamanda daha sağlıklı bir yapıya sahip olacaksınız. Bu söylediğim nota örnek vermek gerekirse.



    //link yapısı  konudetay.php?sef_baslik=php-dersleri&id=1
    
    $id       = $_GET["yazi_id"];
    $baslik = $_GET['sef_baslik'];
    
    if(!$id || !$baslik){
       //eğer get ile id veya başlık adında değer gelmediyse 404.php ye yönlendir..
    }else{
    
    $sorgu = $db->prepare("SELECT * FROM yazilar WHERE yazi_sef_baslik=:baslik AND yazi_id =:id");
    $sorgu->execute(array(':baslik' => $baslik, ':id' => $id));
    
    if($sorgu->rowCount()){
    
    $row = $sorgu->fetch(PDO::FETCH_ASSOC);
    
    echo $row["yazi_baslik"]. " Yazısına hoşgeldiniz";
    
    }else{
    
    echo "Böyle bir konu yok";
    }
    
    }
  • 18-03-2019, 12:28:55
    #3
    Get veya post tanımlaması yap.
    Page.php?id=ICERIKID gibi.
    Daha sonra içerik IDsi ile veritabanından çekim yapabilirsin.
  • 18-03-2019, 12:29:27
    #4
    <?php
    $page = isset($_GET['page'])  ?  $_GET['page']  : 'index';
    
    switch($page){
    case "orneksayfa":
    require "../orneksayfa";
    }
    ?>
  • 18-03-2019, 12:38:03
    #5
    cesalp adlı üyeden alıntı: mesajı görüntüle
    <?php
    $page = isset($_GET['page'])  ?  $_GET['page']  : 'index';
    
    switch($page){
    case "orneksayfa":
    require "../orneksayfa";
    }
    ?>

    Belirtilen bir ürünün sef linkine ait ya da id sine ait olan ürünün detaylarını yazdırabilceği alanı yapmak istemiş. Ondan dolayı veritabanı sorgusu olmak zorundadır
  • 18-03-2019, 12:42:54
    #6
    yavuzselim57 adlı üyeden alıntı: mesajı görüntüle
    Öncelikle tablonu şu şekilde düşünelim.

    yazi_id
    yazi_baslik
    yazi_sef_baslik

    Örnek bir konu girilmesi gerekirse.

    id = 1
    Başlık = Php Dersleri
    Sef başlık = php-dersleri


    $baslik = $_GET['sef_baslik'];
    $sorgu = $db->prepare("SELECT * FROM yazilar WHERE yazi_sef_baslik=:baslik");
    $sorgu->execute(array(':baslik' => $baslik));
    
    if($sorgu->rowCount()){
    
    $row = $sorgu->fetch(PDO::FETCH_ASSOC);
    
    echo $row["yazi_baslik"]. " Yazısına hoşgeldiniz";
    
    }else{
    
    echo "Böyle bir konu yok";
    }
    Şeklinde gösterebilirsiniz.
    verdiğiniz kodu page.php sayfasına ekledim, fakat konu yok uyarısı almaktayım,
    <?php
    include 'database.php';
    
    $baslik = $_GET['baslik'];
    $sorgu = $db->prepare("SELECT * FROM blog WHERE sefurl");
    $sorgu->execute(array(':baslik' => $baslik));
    
    if($sorgu->rowCount()){
    
    $row = $sorgu->fetch(PDO::FETCH_ASSOC);
    
    echo $row["baslik"]. " Yazısına hoşgeldiniz";
    
    }
    else{
    
    echo "Böyle bir konu yok";
    }
    
    ?>
  • 18-03-2019, 12:44:17
    #7
    fatihsyn adlı üyeden alıntı: mesajı görüntüle
    verdiğiniz kodu page.php sayfasına ekledim, fakat konu yok uyarısı almaktayım,

    <?php
    include 'database.php';

    $baslik = $_GET['baslik'];
    $sorgu = $db->prepare("SELECT * FROM blog WHERE sefurl");
    $sorgu->execute(array(':baslik' => $baslik));

    if($sorgu->rowCount()){

    $row = $sorgu->fetch(PDO::FETCH_ASSOC);

    echo $row["baslik"]. " Yazısına hoşgeldiniz";

    }
    else{

    echo "Böyle bir konu yok";
    }

    ?>
    sorgunuzda hata var.

    $sorgu = $db->prepare("SELECT * FROM blog WHERE sefurl=:baslik"); //burayı eklememişsiinz.
    $sorgu->execute(array(':baslik' => $baslik));


    Ek olarak sefurl veritabanınızda yazılar tablonuzda gerçekten var mı böyle bir sütun ? ve konularınızın başlıklarını sef olarak kaydedebilceğiniz bir fonksiyonunuz var mıdır ?
  • 18-03-2019, 12:47:17
    #8
    yavuzselim57 adlı üyeden alıntı: mesajı görüntüle
    sorgunuzda hata var.

    $sorgu = $db->prepare("SELECT * FROM blog WHERE sefurl=:baslik"); //burayı eklememişsiinz.
    $sorgu->execute(array(':baslik' => $baslik));


    Ek olarak sefurl veritabanınızda yazılar tablonuzda gerçekten var mı böyle bir sütun ? ve konularınızın başlıklarını sef olarak kaydedebilceğiniz bir fonksiyonunuz var mıdır ?
    Evet o şekilde bir alan mevcut, php kod içerisinden verileri oraya şuanda manuel ekleme yapıyorum ileride baslik dönüştürüp ekleteceğim.
  • 18-03-2019, 12:49:10
    #9
    fatihsyn adlı üyeden alıntı: mesajı görüntüle
    Evet o şekilde bir alan mevcut, php kod içerisinden verileri oraya şuanda manuel ekleme yapıyorum ileride baslik dönüştürüp ekleteceğim.
    tamamdır o halde yazdığım şekile çevirirseniz probleminiz çözülecektir. Ve tabiki konu içeriğine gönderdiğiniz linkide düzenlemeniz gerekir.
    Team viewer ile bağlantı sağlayabiliriz ya da kodlarınızı info@yavuz-selim.com adresime gönderebilirsiniz. Kontrol edip tekrar geri gönderirim.