Bu yazıda veritabanı uygulamaları geliştirmek için CodeIgniter'da atmanız gereken adımları listeleyeceğiz. CodeIgniter, veritabanı uygulamaları için birden sürücü tipini desteklemektedir. Bunlar : mysql, mysqli, postgre, odbc, mssql, sqlite, oci8 tipleridir. Genelde linux makineler üzerinde MySQL tipinde veritabanları olduğu için bu yazı MySQL tipe uygun olarak CodeIgniter 1.7.1. versiyonu için anlatılmıştır. Diğer versiyon ve veritabanı tiplerine göre kendi ayarlarınızı adapte etmeniz gereklidir.
Öncelikle application/config/autoload.php dosyasını yazı editörümüzde açıyoruz. 42. satırda geçen libraries değişkenine database değerini ekliyoruz. Böylece CodeIgniter çalışmaya başladığında veritabanı otomatik olarak yüklenecektir.
$autoload['libraries'] = array('database');
Daha sonra veritabanı bağlantı bilgilerini ayarlamak için application/config/database.php dosyasını yazı editörümüzde açıyoruz. Bu dosyada 40. satrıdan itibaren aşağıda tanımlandığı gibi kendi veritabanımıza uygun olarak ilgili değerleri giriyoruz.
$db['default']['hostname'] = "localhost";//server ip değeri $db['default']['username'] = "kullanici_adi"; $db['default']['password'] = "sifre_degeri"; $db['default']['database'] = "veritabani_adi"; $db['default']['dbdriver'] = "mysql"; $db['default']['dbprefix'] = ""; $db['default']['pconnect'] = TRUE; $db['default']['db_debug'] = TRUE; $db['default']['cache_on'] = FALSE; $db['default']['cachedir'] = ""; $db['default']['char_set'] = "utf8"; $db['default']['dbcollat'] = "utf8_general_ci";
Şimdiye kadar yaptığımız ayarlar ile veritabanımızın olduğunu CodeIgniter'a bildirdik ve açılışta veritabanı sınıfını otomatik olarak yüklettik. Bundan sonra yapacağımız controller dosyası içinde gerektiği zaman model dosyamızı çağırmak olacaktır. Aşsağıdaki örnekte 15. satırda günlük_model.php isimli model dosyamızı çağırıyoruz. Daha sonraki satırlarda ise Model dosyamızın içindeki gunluk_getir() metodunu kullanarak veritabanımızdan bilgi çekiyor, view dosyamızda kullanmak üzere gunluk_listesi değişkenine veri atıyoruz.
class Gunluk extends Controller {
function Gunluk()
{
parent::Controller();
}
function index()
{
$this->load->library('pagination');
if(isset($_GET['sayfa'])) $sayfa = (int) $_GET['sayfa'];
else $sayfa = "0";
$this->load->model('gunluk_model', 'Model');
$data['gunluk_listesi'] = $this->Model->gunluk_getir($sayfa);
$data['gunluk_listesi']['sayfa_listesi'] = $this->_config_pagination($data['gunluk_listesi']['toplam']);
$this->load->view('gunluk_view',$data);
}
}
Bu yazımda veritabanı ayarlarının ve bağlantılarının nasıl olması gerektiğini anlattım. Yazıda geçen günlük controller dosyası ve model ile ilgili geniş bilgiye buradan ulaşabilirisiniz.
Yazarı : Fatih BAZMAN | Yorum Ekle | Etiketler : Veritabanı Model Bağlantı
Türkiye