Phalcon Framework Dersleri – 2 / Veritabanına Bağlanmak ve Model Oluşturmak
Merhabalar, bu dersimizde veritabanı bağlantısı gerçekleştirip model oluşturacağız ve insert işlemini gerçekleştireceğiz.
Uye isminde bir Controller oluşturalım:
<?php class UyeController extends \Phalcon\Mvc\Controller { public function indexAction() { } public function kayitAction() { } }
Daha sonra tutorial/app/views klasoru altında uye isminde bir klasör ve uye klasörünün içinde de index.phtml dosyasını oluşturalım yani şu şekilde olacak tutorial/app/views/uye/index.phtml dosyamınızın içine de form tanımlayalım :
Kayıt Ol !
Model Oluşturmak
Phalcon tamamen C dilinde yazılan güçlü bir ORM desteğini beraberinde getiriyor. İlk modelimizi oluşturmadan önce veritabanı tablomuzu oluşturalım. Oluşturacağımız tablo kayıt olan kullanıcıların bilgilerini saklayan bir tablo olacak.
CREATE TABLE `uye` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `adi` varchar(70) NOT NULL, `email` varchar(70) NOT NULL, PRIMARY KEY (`id`) );
Daha sonra tutorial/app/models/ klasörü içerisinde Uye.php dosyası oluşturun. Modelimiz şu şekilde olmalı :
Veritabanı Bağlantısı Ayarlamak
Veritabanı bağlantısını bootstrap dosyasında tanımlayacağız :
// Veritabanı bağlantısını ayarlıyoruz $di->set('db', function(){ return new \Phalcon\Db\Adapter\Pdo\Mysql(array( "host" => "localhost", "username" => "root", "password" => "123456", "dbname" => "test_db" )); });Boostrap dosyamızın son hali aşağıdaki gibi olacak :
<?php try { // Autoloader ayarlanıyor ve set ettiğimiz dizinlerden class'lar otomatik olarak yüklenecek. $loader = new \Phalcon\Loader(); $loader->registerDirs(array( '../app/controllers/', '../app/models/' ))->register(); // Dependency Injection'a daha sonra değineceğiz $di = new Phalcon\DI\FactoryDefault(); // Veritabanı bağlantısını ayarlıyoruz $di->set('db', function(){ return new \Phalcon\Db\Adapter\Pdo\Mysql(array( "host" => "localhost", "username" => "root", "password" => "secret", "dbname" => "test_db" )); }); // view pathini set ediyoruz. $di->set('view', function(){ $view = new \Phalcon\Mvc\View(); $view->setViewsDir('../app/views/'); return $view; }); // uygulamamızın temel url'ini set ediyoruz. Uygulama içerisinde kullanacağımız Phalcon\Tag class'ında oldukça yararı dokunacaktır :) $di->set('url', function(){ $url = new \Phalcon\Mvc\Url(); $url->setBaseUri('/tutorial/'); return $url; }); // İçeriği alıyoruz. uygulamaladan gelen tüm verileri yazdırmasını söylüyoruz. $application = new \Phalcon\Mvc\Application($di); echo $application->handle()->getContent(); } catch(\Phalcon\Exception $e) { echo "PhalconException: ", $e->getMessage(); // Hata varsa hata mesajını yazdır. }Şimdi ki adımda form'dan aldığımız verileri veritabanına kaydediyoruz :
Gördüğünüz gibi Phalcon'da uygulama gerçekleştirmek oldukça kolay 🙂 Bir sonraki derste Nginx üzerinde Phalcon ayarlarını gerçekleştirerek derslerimize devam edeceğiz 🙂 CYA !