• 30-03-2020, 00:06:32
    #1
    Üyeliği durduruldu
    Merhaba,
    Daha öncesinde bir arkadaşımın projesinde görmüştüm 2 sene falan geçti şuan hatırlayamıyorum şu şekilde ayarları tutuyordu ayar tablosunun içinde 4 adet sutün bulunuyor id ayaradi ayarkarsiligi eklenme zamanı şeklinde bende bu şekilde yapmak istiyorum fakat şöyle birşey var normalde ben verileri şu şekilde çekebiliyorum $siteinfo[0}['site_title] gibi bu şekilde veri çekmekteyim istediğim gibi nasıl yapabilirim? Codeigniter kullanmaktayım
  • 30-03-2020, 00:14:41
    #2
    burakalaca adlı üyeden alıntı: mesajı görüntüle
    Merhaba,
    Daha öncesinde bir arkadaşımın projesinde görmüştüm 2 sene falan geçti şuan hatırlayamıyorum şu şekilde ayarları tutuyordu ayar tablosunun içinde 4 adet sutün bulunuyor id ayaradi ayarkarsiligi eklenme zamanı şeklinde bende bu şekilde yapmak istiyorum fakat şöyle birşey var normalde ben verileri şu şekilde çekebiliyorum $siteinfo[0}['site_title] gibi bu şekilde veri çekmekteyim istediğim gibi nasıl yapabilirim? Codeigniter kullanmaktayım
    Tam olarak ne yapmaya çalışıyorsun?
  • 30-03-2020, 00:26:57
    #3
    Üyeliği durduruldu
    Misafir adlı üyeden alıntı: mesajı görüntüle
    Tam olarak ne yapmaya çalışıyorsun?
    https://prnt.sc/rp1i5s bunu veritabanı gibi düşünebilirsiniz örnek olarak ayaradi olarak instagram yazdığımı zaman ayar karşılığının gelmesini istiyorum
  • 30-03-2020, 00:33:54
    #4
    Şöyle ki örneğin
    $settings = $db->select("SELECT * from settings");
    diyelim ki bu şekilde verilerini çektirdin yazdırırkende

    <?php echo $settings[0]["data"]; ?>
    <?php echo $settings[1]["data"]; ?>
    data senin ayar_karsiligi diye yazdığın kolonun adı 0 1 2 3 4 diye gider bunlarda 0 ilk veri
    1 ikinci veri
    2 üçüncü veriyi yani senin tablonda Ahmetin sitesi açıklama diye yazdırır
  • 30-03-2020, 00:36:27
    #5
    burakalaca adlı üyeden alıntı: mesajı görüntüle
    https://prnt.sc/rp1i5s bunu veritabanı gibi düşünebilirsiniz örnek olarak ayaradi olarak instagram yazdığımı zaman ayar karşılığının gelmesini istiyorum
    $instagram = $this->db->where(['name'=>'Instagram'])->get('social_medias')->row();
    Şöyle kullanabilirsin: $instagram->id
  • 30-03-2020, 00:41:28
    #6
    Üyeliği durduruldu
    efsungokmen adlı üyeden alıntı: mesajı görüntüle
    data senin ayar_karsiligi diye yazdığın kolonun adı 0 1 2 3 4 diye gider bunlarda 0 ilk veri
    1 ikinci veri
    2 üçüncü veriyi yani senin tablonda Ahmetin sitesi açıklama diye yazdırır
    Bunu yapıyorum ama veri sayısı arttığı zaman sırasını (sayı olarak )öğrenmek yorucu olucak her seferinde uğraşmamak için konuda belirttiğim gibi nasıl yapılabileceğini araştırmaktayım.



    Misafir adlı üyeden alıntı: mesajı görüntüle
    $instagram = $this->db->where(['name'=>'Instagram'])->get('social_medias')->row();
    Şöyle kullanabilirsin: $instagram->id
    Her ayar adı için ayrı değişken yapmam gerekicek bu şekilde sanırım bu pek işimi görmez :/
  • 30-03-2020, 01:05:45
    #7
    sql cümlesinde ayaradini like ile aratabilir veya where koşuluyla ayarlayablirsin dolayısıyla istediğin sonucu yüzlerce içerik olsada alırsın
  • 30-03-2020, 06:39:32
    #8
    Klasik bir yöntem önerebilirim bunun için.
    Öncelikle "application/libraries" içerisine "preLoadData.php" dosyası oluşturun.

    <?php
    class preLoadData {
    public $settings = array();
    public function __construct() {
    $query = get_instance()->db->get('ayarlar');
    foreach ($query->result() as $row) {
    $this->settings[ $row->ayar_adi ] = $row->ayar_karsiligi;
    }
    }
    }
    ?>
    Bu şekilde, ayarları ön yükleme yapabilirsiniz. Diğer kategorileri vs. bu sınıftan halledebilirsiniz.

    Daha sonra "application/helpers" içerisine "get_helper.php" veya "general_helper.php" dosyası oluşturun, yada helper dosyanız var ise şu fonksiyonu ekleyin;

    <?php
    function config($key) {
        $settings =& get_instance()->preloaddata->settings;
        return (isset($settings[$key]) ? $settings[$key] : NULL);
    }
    ?>
    Site içerisinde controllers yada views dosyalarında

    <?php
    // Controllers veya views dosyalarında bu şekilde ulaşabilirsiniz.
    echo config('title');
    ?>
    Son olarak "autoload.php" içerisine,

    $autoload['libraries']... kısmına "preLoadData" ilave etmeyi unutmayın. aynı şekilde helper dosyasınıda.