Php blog scripti nasıl yapılır?

Php blog scripti nasıl yapılır?

Öncelikle bu sistemi yapmak sizin ne işinize yarar bundan bahsediyim. Blogger gibi siteleri sıklıkla görüyoruz. Bir domain üzerinde herkes kendine ait bir alt domaine hatta özel domaine sahip oluyor. Üstelik bu site içerisinde her sistem özelleştirilebiliyor. Öncelikle bu konu çok kapsamlı bir konu olduğu için özet olarak kısaca yapılması gerekenlerden bahsedeceğim. İlk olarak performans açısından yüksek performans sağlayabilmek için her site için ayrı bir veri tabanı oluşturmanız, en azından her site için bir tablo oluşturmanız gerekecek. Bu yüzden kapsamlı bir veri tabanı sınıfı(class) oluşturmalısınız. Yani sisteme kayıt olan her kişi için yeni veri tabanı kayıtları oluşturulmalı.  Ortak bir tablo olmalı ve bu tablo içerisinde açılan siteler ile ilgili kayıtlar tutulmalı. Bu tablo şöyle olabilir; sites{id, domain, subdomain, authorid, title, desc, dbname, adminname, adminpass….} gibi olabilir. Bu tablodan öyle bir database olup olmadığını kontrol ettirip öyle site için database oluşturulmasına dikkat edilmeli. Tek bir satırdan tüm bilgiler kontrol edilebileceğinden yukardaki tabloyu oluşturmanız size hep kolaylık hem de performans sağlar.
  CREATE DATABASE db_name şeklindeki mysql komutları ile mysql_query fonksiyonunu kullanarak yeni veritabanınızı oluşturabilirsiniz. Tabi mysql genelde php ile uyumludur. ASP kullananlar ise kullandıkları veritabanına göre çözüm bulmalılar. Bundan sonraki adımda .htaccess dosyasında epeyce bir düzenleme gerekecek. Hem sonu html ile biten dosyalar için hem de klasör sistemi isteyenlere uyumlu bir htaccess kodu yazmalısınız. Bu kod tüm alt domainlere ve domainlere uyumlu olmalı. 

Ama mutlaka alt alan adından sitesine erişebilmesi için aşağıdakine benzer bir htaccess kodu kullanmalısınız.  

RewriteEngine On  

# Alt alan adını seçip bizim get değişkenimize göndermesi ve 
# ana index.php dosyamızda çalıştırabilmemiz için 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{HTTP_HOST} !^www 
RewriteCond %{HTTP_HOST} ^([^.]+).([^.]+).([^.]+)$ 
RewriteRule ^(.*)$ /$1?subdomain=%1 

# Tüm dizine ulaşabilmemiz için ise 
RewriteBase / 

RewriteRule ^index.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /index.php?path=$1 [L,QSA] 

#yukarıdaki kodu denemedim, sadece fikir vermek için yazdım. 
#Kendinize göre uyarlayıp kullanmalısınız. 

Yukarıdaki kodu kullandığımızda http://hello.uzmangundem.com/dizin1/dizin2 gibi bir adres girdiğimizde http://www.uzmangundem.com/index.php?path=dizin1/dizin2&subdomain=hello olarak algılanacaktır.   Yukarıda örnek olarak verdiğim veritabanından subdomain bilgisinin bulunduğu satırı seçerek buna bağlı olan veri tabanına bağlanmasını sağlayabiliriz. Yani birincil veri tabanı oluşturun. Bu veritabanı index görevi görsün, yani sadece blogların bilgileri olsun. Bu yukarıda bahsettiğim ortak tablo olacak. Sonra bu subdomaine ait veritabanına mysql_select_db ile bağlanıp, bilgileri getirebilirsin. Tabi ki indexe ulaşan veritabanı kullanıcısı, bu veritanına da ulaşabilme yetkisine sahip olmalı. Ya da kodunuzu buna göre yazmalısınız.

Bu makaleyi değerlendir!
[Toplam: 0 Ortalama: 0]

Bir cevap yazın