PHP ile içerik yönetim sistemi – 10 Nesne yönelimli programlama kavramları

  Bu yazıya kadar hep bebek adımlarıyla ilerledik. Sıra geldi büyük adımları atmaya. Yazılımımızda sınıf yapısını kullandık. Bu zamana kadar sınıf yapısını aşağı yukarı mantığını kavrayacak şekilde öğrendiniz. Ancak bilmemiz gereken bir sürü şey daha var. Programımızı bu kavramlara uyduralım. Sınıflarımızda tek tek değişiklikler yapalım. DRY prensibi DRY yani “Do not Repeat Yourself” kendinizi tekrar […]

PHP ile içerik yönetim sistemi – 9 Birleştirmeye devam edelim.

index.php dosyamızı incelemeye devam edelim. Önce app sınıfımızı oluşturmuşuz ve bağlantı metodunu çağırmışız. Daha sonraki satırların korkutucu olduğunu kabul ediyorum. Yine her zaman yaptığımız gibi tek tek inceleyelim. [code language=”php”] $app->connect($config[‘db’][‘host’],$config[‘db’][‘username’],$config[‘db’][‘password’],$config[‘db’][‘dbname’]); if(strpos($_SERVER[‘REQUEST_URI’],$_SERVER[‘SCRIPT_NAME’])!==false){ $request = str_replace($_SERVER[‘SCRIPT_NAME’], "", $_SERVER[‘REQUEST_URI’]); } else{ $request = "/Posts/"; } if(!empty($_POST)) { $data = $_POST; } elseif(!empty($_FILES)) { $data = $_FILES; } […]

PHP ile içerik yönetim sistemi – 8 Herşeyi birleştirmeye başlayalım

  Sıra geldi herşeyi birleştirmeye ve projemizin ilk bebek adımlarını atmasını sağlamaya. Yapmamız gerek bir kaç iş daha var ama biz projeyi birleştirmeye başlayalım.   burada config.codekit ve composer.json dosyaları hariç dizin yapısını lokal web sunucumuzun içinde (ipucu:xampp) oluşturalım. Klasör ismimiz Cms olsun. En önemli dosyamız şu anda index.php. Diyelim ki projemizi, ftp ile sunucuya […]

PHP ile içerik yönetim sistemi – 7 Temalar ve Admin paneli

Görüntü sayfalarımız neredeyse bitti. Kullanıcıya göstermemiz gereken iki tip sayfa var. Kullanıcı eğer adminse, şifreyle giriş yaptıysa, yönetim yani admin paneli. Eğer giriş yapmadıysa, herkesin göreceği sayfa ve menüler. Eğer o sayfa sistemde yoksa, 404 yani sayfa bulunmadı mesajı göstermeliyiz. Kullanıcıların göreceği sıradan sayfaların bileşenleri neler olacak? Bunları zaten HTML5 serisinde gözden geçirmiştik. Logo veya […]

PHP ile içerik yönetim sistemi – 6 Veriyi html’ye çeviren PHP dosyaları

Kalan işlerimizi gözden geçirelim. Uygulama için konfigürasyon dosyası yazmak. Veritabanı bilgileri, saat dilimi gibi bilgileri tutsun. Veritabanı işlemlerini yapan sınıflarımız şimdilik oldukları gibi kalsınlar. Veri giren ve gösteren, düzenleyen formlarımızı tutan sayfalarımızı oluşturalım. Ama bu adımdan önce gereksiz kullanıcı girişlerini önlemek için oturum açalım. Kullanıcılar sınıfını oluşturalım. Bunun için admin bölümü sayfalarını oluşturalım. En son […]

PHP ile içerik yönetim sistemi – 5 Gereksiz kod tekrarlarından kaçınmak ve hataları başından önlemek

Kalan iki sınıfımız daha var. Kategoriler ve Resimler. Bir önceki bölümde hazırladığımız gibi, diğer iki sınıf dosyasını da hazırlayalım: Kategoriler sınıfı: [code language=”php”] <?php /** * Tüm sistemdeki kategorileri yönetecek olan kategori sınıfıdır. * * Sistemdeki kategorilerin düzenlenmesini, silinmesini, görüntülenmesini, * listelenmesini ve eklenmesini kontrol eden sınıftır. * * @author Midori Kocak <mtkocak@mtkocak.net> */ class […]

PHP ile içerik yönetim sistemi – 4 Sınıflarımızı yazmaya başlayalım.

Bir önceki örneğimizde sınıfımızdaki metodların içlerini boş bırakmıştık. Şimdi tek tek bu metodların içlerini dolduracağız. Öncelikle veritabanına bağlanacağız. Ancak bu bağlantıyı, sınıf çalışıyorken bir değişkende tutmamız gerek. [code language=”php”] /** * Veritabanı bağlantısını tutacak olan değişken. * * @var PDO */ private $db; /** * Veritabanına bağlanmaya yarayan metod * * @param string host Veritabanı sunucusunun […]

PHP ile içerik yönetim sistemi – 3 Sınıf taslakları

PHP ile içerik yönetim sistemi yazmaya devam ediyoruz, yapacağımız bütün işleri belirledik, şimdi sıra geldi sınıflarımızın taslaklarını hazırlamaya. 3 adet sınıfımız olacak, Posts (Girdiler), Categories (Kategoriler) ve Files (Dosyalar). Basit bi şekilde, içerik girme (add), bir adet görüntüleme (view), düzenleme (edit), silme (delete) ve listeleme (index) işlemlerini hepsinde yapacağız. Biz öncelikle girdilerden başlayalım. Taslak olarak […]

PHP ile içerik yönetim sistemi yazalım – 2 – Yapılacak işler

PHP ile içerik yönetim sistemi yazmaya azimliyiz. Temel SQL bilgimizle veritabanını modellemeyi de öğrendik. Ara yazı olarak öncelikle neler yapmamız gerektiğini planlamalıyız. Aslında bu adımlar genel olarak yazacağınız ‘personel yönetim sistemi’, ‘müşteri ilişkileri yönetimi’ gibi yazılımlarda da aynı. Şimdi baştan itibaren attığımız ve atacağımız adımları inceleyelim ve planlayalım: Mantıksal modelleme, yani sistemi ne için kullanacağız. […]

Temel SQL serisi, SON SQL-5 Sayfalama ve Arama işlemleri

Bir sürü şeyi hallettik. Veri ekleme, düzenleme, güncelleme ve silme. Bir de birleştirme. Geriye ne kaldı? Görelim bakalım.. Tüm yazıların başlıklarının olduğu bir liste göstermek. Kategori eklemek, silmek, düzenlemek. Kategori içindeki yazıları göstermek Ayrıca yazı başlıklarını gösterirken, sayfalama yapmak, her sayfada 20 yazı göstermek, 2. sayfada bir sonraki 20 yazıyı yani 20 ile 40 arası […]