Veritabanından modele veri gönderimi ile ilgili örneğimiz

Config dosyasında veritabanına erişim için sistemi şu şekilde yapılandıran gerekli dosya \cms\app\Config.cms.dev.php


define('DB_TYPE', 'mysql');
define('DB_HOST', 'localhost'); 
define('DB_NAME', 'dbname');
define('DB_USER', 'root');
define('DB_PASS', 'şifreniz');
//bu kısım veritabanı tablolarının önekini verdiğimiz yerdir 
define('PREFIX', 'dr_'); // onek

//veritabanı örneği

CREATE TABLE `dr_sayfalar` (
`id`  int(11) NOT NULL AUTO_INCREMENT ,
`baslik`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`slug`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
`icerik`  text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,
`resim`  varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,
PRIMARY KEY (`id`),
INDEX `id` (`id`) USING BTREE 
)
DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci
ROW_FORMAT=COMPACT
;

  • Veritabanı ile ilgili işlemlerde bazı kolaylıklar açısından veritabanı sınıfı herşeyi basite indirecek şekilde geliştirilmiştir
  • PDO nun bindValue nesnesi ile sql injecktion a karşı koruma sağlar.
  • Aynı zamanda webofisde bulunan pdo sınıfının yapsısı hariç sadece isimleri ile aynıdır
Birden fazla satır bilgisini verir orneğin tüm sayfalar içeriğini çekmek isterseniz bunu kullanabilirsiniz
			

        $sql = "select * FROM " . PREFIX . "sayfalar ";
        return $data = $this->_db->rows($sql);
    

		
Sadece tek bir satıra ait bilgi dondermek içindir
			

        $sql = "select * FROM " . PREFIX . "sayfalar where id=1";
        return $data = $this->_db->fetch($sql);
    

		
veritabanına bilgi eklemek için kullanılır
			
			$data = array (
					'baslik' => 'hakkımızda',
					'icerik' => 'içerik sayfası',
			);
     		$this->_db->insert(PREFIX . "sayfalar", $data);
    

		
veritabanındaki satırı düzenlemek için kullanılır
	
	//hangi alana veri yazılacak 
		$data = array (
					'baslik' => 'hakkımızda',
					'icerik' => 'içerik sayfası',
			);
			
			//hangi alanın verisi değişecek 
			$where = array (
					'id' => "1"
			);
			
		$this->_db->insert(PREFIX . "sayfalar", $data,	$where);
    

veritabanındaki satırı silmek için kullanılır
	
		$where = array ("id" => 1);
		$this->_db->delete ( $where );
    

Veritabanına eklenen son id değerini verir
	
	  /**
     * son eklenenin id numarası
     */
     
     $this->_db->lastID();