CodeIgniter Kurulumu
Bundan sonra Code Igniter adlı kategoride sevgili Sinan Ata‘nın önerisi üzerine kurcalamış olduğum ve oldukça hoşuma giden mvc(model-view-controller) tabanlı bir framework olan CodeIgniter’e dair yazılar yayınlıyacağım.. İsterseniz ilk önce biraz bu framework’u neden kullanmalısınız ondan bahsedeyim..
Ci , son zamanların çok popüler dillerinden biri olan Ruby on Rails (ki buda bir framework) dosya yapısı ile PHP ‘de uygulama geliştirmenizi sağlayan, yaptığınız projelerde tasarımla, kodu birbirinden ayırmanızı sağlayan bir framework.. Bu framework ile yaptığınız uygulamaları çok daha kısa süreler içinde geliştirebilirsiniz.. Örneğin şu adresteki 20′dk de blog yapımı videosu gibi..
Lafı fazla uzatmadan kurulumu anlatmak istiyorum. Aslında kurulumun normal bir PHP scripti sunucuda çalıştırmaktan pek bir farkı yok.. İlk olarak şuradaki adresten Ci ‘yi download ediyorsunuz. İndirdiğiniz dosyayı bir klasöre çıkartın ancak dikkat edin çıkarttığınız klasörün altında bir klasör daha olmasın yani sonuç olarak klasöre girdiğiniz de system, user_guide ve index.php dosyalarını görmüş olmalısınız. Daha sonra bu klasörü sunucunuzun WWW klasörü içine atın ve Tarayıcınızı açıp http://localhost/klasorAdi/ yazin eğer karşınıza “Welcome to Code Igniter!” mesajı geldi ise işlem başarılı demektir ![]()
Şimdi de biraz sistemi konfigure etmekten bahsedelim. CodeIgniter ile yaptığınız projelerin dosyaları system/application dizininde bulunuyor. Şimdi diğer klasörler ile ilgilenmeyi boş verin bizi ilgilendiren application/config klasörü içinde bulunan dosyalar ve ne işe yaradıkları..Klasörü açtığınızda karşınıza çıkacak dosyalardan
- autoload.php : Bu dosya, site ilk yüklendiğinde sisteme otomatik olarak hangi kütüphaneleri, yardımcıları dahil edeceğinizi belirtmenizi sağlar.. Örneğin veritabanı kütüphanesini eklemek istiyorsanız 40. satırdaki $autoload['libraries'] = array(); olan kısmı $autoload['libraries'] = array(’database’); olarak değiştirmeniz yeterli. Peki biz bu kütüphane isimlerini nereden bileceğiz derseniz zamanla hepsini öğreneceğiz arkadaşlar yada kendiniz azıcık ingilizceniz varsa User Guide yardımıyla öğrenebilirsiniz.
- config.php : Bu dosya ise belli başlı ayarların bulunacağı dosyamız oluyor bizim için ilk başta önemli olan kısım $config['base_url'] = “”; olan kısım. Bu kısım ile sitemizin adresini belirtiyoruz.Mesala Ci’yi Local sunucunuzda www klasörü altında ci klasörüne attıysanız burayı $config['base_url'] = “http://localhost/ci/”; olarak düzenlemeniz gerekecek.. Siz kendinize göre modifiye edebilirsiniz
- database.php : Bu dosya ise eğer sitenizde veritabanı işlemleri (veri girme, listeme, silme …gibi) yapacaksanız düzenlemeniz gereken dosya, içeriğine değinecek olursak; normal bir kullanıcının düzenlemesi gereken 3 kısım var. 37-39 satırlar arası (37 ve 39′ta dahil), 37. satırda veritabanına bağlanırken kullanacağınız kullanıcı adını, 38. satıra veritabanına bağlanırken kullancağınız şifrenizi,39. satıra veritabanı adınızı yazmanız gerekiyor.
- routes.php : Buda başlangıç için son önemli dosyamız, burada yapılacak fazla bir ayar yok tek yapacağınız $route['default_controller'] = “welcome”; olan kısmı düzenlemek. Bu ayar ise siteniz açıldığında hangi kontrolün yükleneceğini belirtmenizi sağlıyor. Şimdilik welcome olarak kalsın daha sonra ilk kontrolümüzü yazdığımızda olayı tamamen açıklayacağım
Konfigürasyon işlemleri için başlangıçta yapabileceğim açıklamalar bu kadar. Böylece bir giriş yapmış olduk… Sizler için bu işlemlerin hepsini video olarak ders halinede getirdim ancak boyutu aşırı büyük olduğundan boyutunu küçülttüğüm anda sizlerle paylaşıcam.. Burada yaptıklarımızı şuanda görsel olarak görmek isterseniz buradaki “merhaba dünya” uygulamasına bakabilirsiniz. Video ingilizce ama ingilizceniz yoksa bile sadece izlemeniz bile yararlı olacaktır..Bu arada CodeIgniter için en büyük kaynak kullanıcı kılavuzu, kesin olarak konuşmayayım ama buda Türkçe olur belki yakında ![]()
Tebrikler Gürkan,
Sıcak sıcak hemen yorumu yazayım bu seriyi devam ettir CodeIgniter öğreneceğiz senden.
inşallah.. devamı geliyor.. gelecek..
Aslında Gürkan bence arkdaşlara MVC anlatsaydın daha iyiydi.
NEdir neye yarar neden MVC mimarisi kullanıyoruz vs. şeklinde bir yazı daha hoş kaçabilirdi.
Neyse sen yorulma ben yazayım sen de bana link verirsin artık
aslında o olayı daha derinlemesine ele almak lazım.. hmm ekliyim ToDo List’e
Ben de çok önceden http://www.bildirgec.org/yazi/code-igniter-php-ciler-icin-yeni adresinde bahsetmiştim. Gerçekten güzel bir framework.
Şu anda php framework’ler arasında en iyi dökümantasyona sahip olanı bence. Bu yüzden kesinlikle Türkçeleştirme çalışması yapılmalı. Boş vaktim olursa başlayacağım inşallah
evet @eburhan hatta giriş yazısından “çoğu geliştirici kod yazmayı sever ama döküman yazmayı sevmez bizde sevmiyoruz ancak sırf sizler için yazdık” gibi diğer frameworklere dokunduran bir cümle var
[...] Bir önceki codeigniter yazımda ci’yi nasıl kuracağınıza değinmiş ve azda olsa mvc yapısı hakkında bilgiler vermiştim bu yazımda ise basit bir merhaba dünya uygulaması nasıl yapabileceğinizi göstereceğim.. uygulamayı 2 farklı biçimde yapacağız. 1 şekil; view kullanmadan direk kontrolün içinden ekrana “merhaba dünya” yazdırmak, 2. olan ise; view kullanarak yazdırmak haydi başlıyalım… [...]
ci nin nekadar iyi dökümantasyona sahip oldugu söylenip duruluyor…
bi cakephp kullanicisi olarak garip geliyor, evet belki offical dökümantasyon olarak ci, cakephp ye göre daha iyi gibi gözükebilir fakat toplam kaynak olarak bakacak olursak, en basitinden google da “CodeIgniter” aratinca 416.000 sonuç çikarken “cakephp” aratildiginda ise 2.750.000 sonuç çikiyor…
bu rakamlar hangi framework un daha popüler ve hangisinin daha çok toplam kaynaga sahip oldugu konusunda süpheye yer birakmiyor sanirirm.
ama siz yinete ikna olmazsaniz bir de google trends ile karsilastirin iki frameworkü, cakephpnin acik ara önde oldugunu söylemeye gerek yok sanirim…
http://www.google.com/trends?q=Cakephp, CodeIgniter&date=all&geo=all&ctab=0&sa=N
emre şöyle ilginç bir durum varki yapılan performans araştırmalarında codeigniter’in cakephp’den daha hızlı çalıştığı gözlemlenmiş
ama cakephp’de güzel bir framework tabi.. her ne kadar ben kurulumunu yapamayıp bıraksamda 
“helo world!” yazdirilan benchmark sonuçlarini kasdediyor olmalisin.
evet kabul, ci framework u ile cakephp den çok daha hizli “hello world” yazdirabilirsiniz
Hello World! gercek uygulamadaki pekçok seyi (sessions, database connections, vs.) kullanmadigi icin gercek bir test olmaktan çok uzak. söz konusu test orta/büyük ölcekli bir real world uygulama olsaydi eminim sonuç farkli cikacakti.
cakephp cok daha fazla “built-in capability” ye sahip bi framework oldugu için, evet haklısınız sadece “Hello World!” yazdirmak için biraz agir kaçiyor.
okadar hantal bir framework olsaydi, ibm cake php ile ilgili her biri 5 bölümlük 2 tutorial yayinlar miydi…
http://www-128.ibm.com/developerworks/edu/os-dw-os-php-cake1.html
http://www-128.ibm.com/developerworks/edu/os-dw-os-php-wiki1.html
ve eger tek derdimiz hiz olsaydi, sanirim hepimiz oop yi birakip procedural programlamaya dönmemiz gerekirdi…
symfony framework ü ile mesela “hello world” ü yazdirmak, cakephp den çok daha uzun sürüyor benchmark sonuçlarina göre, ama Yahoo! bookmarks, symfony frameworkünü kullaniyor. herhalde yahoo daki programcılar bu işten anlamiyor olmali benchmarklarda en altta cikan framework ü kullandiklarina göre.
son söz olarak, amacim asla ci yi kötülemek degil, güzel ve offical dökümantasyon olarak gayet iyi ve evet çok basit uygulamalar icin cakephpden daha hizli calisabilecek bir framework ama bence cakephp is the best
tespitlerin kısmen doğru olabilir ama ci, sadece küçük çapta uygulamalar için yapılmış bir framework değil
sana göre cakephp bana göre ci zevk meselesi
birde benim codeigniter kullanma nedenlerimden biride kendimi çok özgür hissetme onu kullanırken yada ilk dur şunu bir kurcalıyayım dediğimde bana aşırı kolay gelmiş olması olabilir… bu arada yorumu 3 kere tekrarlamana gerek yoktu 
[...] routes.php : Buda ba
merhaba bende öğrenmek için heveslendim ve download etmeye çalıştım ama websitesinden bir türlü inderemiyorum zipli dosyayı. hep eksik geliyor ve arşiv bozuk hatası veriyor. Olan birisi gönderirse çok mutlu olurum tşkler.
Sayın Gürkan OLUÇ,
Öncelikli olarak makale için teşekkür ederim ama umarım
http://www.ceviz.net/bolum-1-codeigniter-kurulumu_a1109.html bu linkte bulunanan Ceviz yazarı ile herhangi bir telif sorunu yaşamamışsınızdır.
Tabii benim için bi sorun yok
Beni ilgilendiren kısımsa CodeIgniter da türkçe karakter sorunu yaşamaktayım nereleri düzenleyebileceğimi kısaca anlatabilirseniz sevinirim
eski günlerin hatrına
@Cerber : Valla ben yaşamadım kendisi ile yazıdan bile yeni haberim oldu zaten benden sonra yazılmış
Türkçe karakter sorununu ise hiç yaşamadığım için tam olarak neden olabileceği konusunda en ufak bir fikrim yok biraz daha açarsan yardımı olabilirim.
Veritabanından çektiğim sorgularda türkçe karakter sorunu yaşıyorum.
@anıl kan : Veritabanı karakter setini utf8_general_ci olarak belirlersen ve php dosyalarında encoding olarak utf8 kullanırsan herhangi bir sorun oluşmuyor.
Maalesef :(( Hala aynı sorun var. veritabanı karakter setim ve dosyalarımda encoding olarak utf 8 kullanıyorum. iso-8859-9 u da denedim sayfadaki tüm yazılar düzgün gözüküyor fakat vt den cektiğim verilerdeki türkçe karakterler ” ıguı gıuı ” şeklinde gözüküyor
@anıl kan : Kendim böyle bir sorunla karşılaşmadığım için kesin bir yorumda bulunamıyorum. Ancak yukarıdaki yorumlarda @CerBer’da benzer bir sorun yaşadı sanırım. Eğer dilersen onun mail adresini yollayabilirim sana. Bir de zaten iso-8859-9 karakter setinde olan bir veritabanını utf8 olarak değiştirirsen pek bir fark yaratmaz. 0′dan bir veritabanı üzerinde çalışmanı tavsiye ederim.
tam umutsuzluğa kapılmıştım ki Bomb !?
system/application/config/database.php içindeki şu iki satırı gördüm :
$db['default']['char_set'] = “utf8″;
$db['default']['dbcollat'] = “utf_general_ci”;
ve aşağıdakilerle değiştirdim
$db['default']['char_set'] = “latin5″;
$db['default']['dbcollat'] = “latin5_turkish_ci”;
artık sorun yok. tek sorun kızıp sildiğim template. Ne yapalım bir daha yazarız
Çözümü paylaştığın için teşekkürler
Sorun veritabanından kaynaklanıyormuş demek ki 
Selamlar
Türkçe karakter sorunu 1.6 ile düzeltilebilir hale geldi CI’da. Normalde db array’inde char_set bölümü yoktu. Çözümü bulabilmeniz güzel
Fakat hala yazıktır ki bu güzel framework üzerine detaylı Türkçe döküman bulunmamakta, umarım CI severler olarak bizler de bir şeyler üretebiliriz.
Kolay gelsin.
Birşeyler yapmak isterdim fakat ingilizceyle aram iyi değil. Emek verip birşeyleri türkçeye çevirirken bir hata yaptığındada insanlardan teşekkür yerine küfür duymak insanı üzüyor. Mağdem o kadar iyi ingilizce biliyorsun sen çevir, demi
ingilizce öğrenmeden programcılık konusunda kariyer yapmak mümkün değil. bu dökümanları takip etmek için temel düzeyde ingilizce bilgisi yeterli olur. bunu öğrenmek ne kadar zor olabilir ki… programlamanın kendisinin, başlangıç seviyesi ingilizce öğrenmekten daha mı kolay olduğunu sanıyosunuz yoksa…
Yorum Yapın
Arayan Bulur
Sayfalar
kategoriler
Yeni düşenler
Arşivler
Linkler
Etiketler
İnternet Ajax Benim Dünyam Bilgisayar Blogroll CSS Duyuru Eleştiri Günlük Genel google Haber Hayat Kategorilenmemiş Kitap Komedi Müzik Makale Makaleler Mim PHP Proje Sinema Tanıtım Web 2.0 Web Geliştirme WordPress Wordpress Eklentisi Yaşam Yazılımlar