SSL Sertifikası + Sınırsız İçerik + Full SEO Uyumlu + Full Mobil Uyumlu.
Üstelik İsterseniz Yapay Zeka Hukuk Asistanı Seçeneğiyle
Günümüzde blog siteleri oldukça popüler bir hale geldi. Bu yazıda sizlere basit bir blog sitesinin nasıl PHP OOP ile yazılacağı hakkında detaylı bir şekilde anlatmaya çalışacağım. Ancak önce PHP OOP nedir onu kısaca açıklayalım.
PHP OOP nedir?
PHP OOP (Object Oriented Programming) kullanımında, nesne yönelimli programlama teknikleri kullanılarak, kodları daha etkili ve düzenli bir şekilde yazabilirsiniz. Nesne yönelimli programlama terimleriyle söylersek, bir sınıf, özellikler ve metotlar oluşturarak kullanabilirsiniz. Bu sayede kodlarınızın okunabilirliği artar ve tekrar kullanılabilir bir şekilde tasarlandığı için kodlarınız daha da güçlü hale gelir.
Şimdi PHP OOP ile nasıl bir blog sitesi yazılır anlatmaya geçebiliriz;
1. Adım - Database Bağlantısı
İlk önce veritabanı bağlantısı kurmalıyız. Bu sayede siteye giriş yapan kullanıcılar, yazıları görebilir ve siteye yorum yapabilirler. Aşağıdaki kodlarda veritabanı bağlantısı ve seçilen veritabanı işlemi yapılır.
```php
define('DB_HOST', 'localhost');
define('DB_NAME', 'test_database');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
$connect = new PDO(\"mysql:host=\" . DB_HOST . \";dbname=\" . DB_NAME, DB_USER, DB_PASSWORD);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
```
2. Adım - Sınıfların Oluşturulması
PHP OOP kullanımında, her bir sayfanın kendine özgü işlevleri vardır. Bu nedenle, kullanacağımız sınıflar ve metotlar belirlenmelidir. Bunu yapmak için, önce Class.php dosyası oluşturulur. Bu dosyaya, ihtiyaç duyulan sınıf ve metotlar tanımlanır. Örneğin, sınıflar; Yorum, Yazı, Kullanıcı vb. olabilir. Bu sınıfların içinde, siteye eklenen yazıların, yorumların ve kullanıcıların verileri yer alabilir.
```php
class Yorum
{
public $id;
public $yorum_yapan;
public $yorum_metni;
public $yayin_tarihi;
public function __construct($id, $yorum_yapan, $yorum_metni, $yayin_tarihi) {
$this->id = $id;
$this->yorum_yapan = $yorum_yapan;
$this->yorum_metni = $yorum_metni;
$this->yayin_tarihi = $yayin_tarihi;
}
}
class Yazı
{
public $id;
public $baslik;
public $metin;
public $tarih;
public $yazan_kisi;
public function __construct($id, $baslik, $metin, $tarih, $yazan_kisi) {
$this->id = $id;
$this->baslik = $baslik;
$this->metin = $metin;
$this->tarih = $tarih;
$this->yazan_kisi = $yazan_kisi;
}
}
class Kullanıcı
{
public $id;
public $isim;
public $soyisim;
public $email;
public $sifre;
public function __construct($id, $isim, $soyisim, $email, $sifre) {
$this->id = $id;
$this->isim = $isim;
$this->soyisim = $soyisim;
$this->email = $email;
$this->sifre = $sifre;
}
}
```
3. Adım - Sınıf Metotlarının Oluşturulması
Sınıfların oluşturulduğu şekilde, sınıf metotları da oluşturulmalıdır. Bu metotlar, siteye eklenen yazılar, yorumlar ve kullanıcılar hakkında verileri veritabanından getirirler. Ayrıca, bu metotlar aracılığıyla, yeni yazılar, yorumlar ve kullanıcılar da eklenir.
```php
class Yorum
{
public function getAll($connect) {
$sql = 'SELECT * FROM yorumlar';
$query = $connect->prepare($sql);
$query->execute();
$results = $query->fetchAll(PDO::FETCH_OBJ);
return $results;
}
public function add($connect, $yorum) {
$sql = \"INSERT INTO yorumlar (id, yorum_yapan, yorum_metni, yayin_tarihi)
VALUES (:id, :yorum_yapan, :yorum_metni, :yayin_tarihi)\";
$query = $connect->prepare($sql);
$query->bindParam(':id', $yorum->id, PDO::PARAM_STR);
$query->bindParam(':yorum_yapan', $yorum->yorum_yapan, PDO::PARAM_STR);
$query->bindParam(':yorum_metni', $yorum->yorum_metni, PDO::PARAM_STR);
$query->bindParam(':yayin_tarihi', $yorum->yayin_tarihi, PDO::PARAM_STR);
$query->execute();
}
}
class Yazı
{
public function getAll($connect) {
$sql = 'SELECT * FROM yazilar';
$query = $connect->prepare($sql);
$query->execute();
$results = $query->fetchAll(PDO::FETCH_OBJ);
return $results;
}
public function add($connect, $yazi) {
$sql = \"INSERT INTO yazilar (id, baslik, metin, tarih, yazan_kisi)
VALUES (:id, :baslik, :metin, :tarih, :yazan_kisi)\";
$query = $connect->prepare($sql);
$query->bindParam(':id', $yazi->id, PDO::PARAM_STR);
$query->bindParam(':baslik', $yazi->baslik, PDO::PARAM_STR);
$query->bindParam(':metin', $yazi->metin, PDO::PARAM_STR);
$query->bindParam(':tarih', $yazi->tarih, PDO::PARAM_STR);
$query->bindParam(':yazan_kisi', $yazi->yazan_kisi, PDO::PARAM_STR);
$query->execute();
}
}
class Kullanıcı
{
public function getAll($connect) {
$sql = 'SELECT * FROM kullanicilar';
$query = $connect->prepare($sql);
$query->execute();
$results = $query->fetchAll(PDO::FETCH_OBJ);
return $results;
}
public function add($connect, $kullanici) {
$sql = \"INSERT INTO kullanicilar (id, isim, soyisim, email, sifre)
VALUES (:id, :isim, :soyisim, :email, :sifre)\";
$query = $connect->prepare($sql);
$query->bindParam(':id', $kullanici->id, PDO::PARAM_STR);
$query->bindParam(':isim', $kullanici->isim, PDO::PARAM_STR);
$query->bindParam(':soyisim', $kullanici->soyisim, PDO::PARAM_STR);
$query->bindParam(':email', $kullanici->email, PDO::PARAM_STR);
$query->bindParam(':sifre', $kullanici->sifre, PDO::PARAM_STR);
$query->execute();
}
}
```
4. Adım - Sitede Kullanılacak Şablonların Belirlenmesi
Sitenin özelleştirilmesi ve tasarımı için, belirli bir şablon kullanın. Ayrıca, siteye ekleyeceğiniz CSS dosyaları da tasarımı daha da iyileştirebilirler.
```php
include 'header.php';
// Sayfa İçeriği
include 'footer.php';
```
5. Adım - Site İçeriğinin Kodlanması
Site içeriğini kodlamak için, sınıf metotlarını kullanarak, veritabanından gelen bilgileri içeren HTML kodları yazmanız gerekmektedir.
```php
include 'Class.php';
$connect = new PDO(\"mysql:host=\" . DB_HOST . \";dbname=\" . DB_NAME, DB_USER, DB_PASSWORD);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Yorumlar
$yorum = new Yorum();
$yorumlar = $yorum->getAll($connect);
foreach ($yorumlar as $yorum) {
echo '
' . $yorum->yorum_metni . '
';' . $yorum->yayin_tarihi . '
';' . $yazi->metin . '
';' . $yazi->tarih . '
';' . $yazi->yazan_kisi . '
';' . $kullanici->isim . ' ' . $kullanici->soyisim . '
';' . $kullanici->email . '
';
Günümüzde blog siteleri oldukça popüler bir hale geldi. Bu yazıda sizlere basit bir blog sitesinin nasıl PHP OOP ile yazılacağı hakkında detaylı bir şekilde anlatmaya çalışacağım. Ancak önce PHP OOP nedir onu kısaca açıklayalım.
PHP OOP nedir?
PHP OOP (Object Oriented Programming) kullanımında, nesne yönelimli programlama teknikleri kullanılarak, kodları daha etkili ve düzenli bir şekilde yazabilirsiniz. Nesne yönelimli programlama terimleriyle söylersek, bir sınıf, özellikler ve metotlar oluşturarak kullanabilirsiniz. Bu sayede kodlarınızın okunabilirliği artar ve tekrar kullanılabilir bir şekilde tasarlandığı için kodlarınız daha da güçlü hale gelir.
Şimdi PHP OOP ile nasıl bir blog sitesi yazılır anlatmaya geçebiliriz;
1. Adım - Database Bağlantısı
İlk önce veritabanı bağlantısı kurmalıyız. Bu sayede siteye giriş yapan kullanıcılar, yazıları görebilir ve siteye yorum yapabilirler. Aşağıdaki kodlarda veritabanı bağlantısı ve seçilen veritabanı işlemi yapılır.
```php
define('DB_HOST', 'localhost');
define('DB_NAME', 'test_database');
define('DB_USER', 'root');
define('DB_PASSWORD', '');
$connect = new PDO(\"mysql:host=\" . DB_HOST . \";dbname=\" . DB_NAME, DB_USER, DB_PASSWORD);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
```
2. Adım - Sınıfların Oluşturulması
PHP OOP kullanımında, her bir sayfanın kendine özgü işlevleri vardır. Bu nedenle, kullanacağımız sınıflar ve metotlar belirlenmelidir. Bunu yapmak için, önce Class.php dosyası oluşturulur. Bu dosyaya, ihtiyaç duyulan sınıf ve metotlar tanımlanır. Örneğin, sınıflar; Yorum, Yazı, Kullanıcı vb. olabilir. Bu sınıfların içinde, siteye eklenen yazıların, yorumların ve kullanıcıların verileri yer alabilir.
```php
class Yorum
{
public $id;
public $yorum_yapan;
public $yorum_metni;
public $yayin_tarihi;
public function __construct($id, $yorum_yapan, $yorum_metni, $yayin_tarihi) {
$this->id = $id;
$this->yorum_yapan = $yorum_yapan;
$this->yorum_metni = $yorum_metni;
$this->yayin_tarihi = $yayin_tarihi;
}
}
class Yazı
{
public $id;
public $baslik;
public $metin;
public $tarih;
public $yazan_kisi;
public function __construct($id, $baslik, $metin, $tarih, $yazan_kisi) {
$this->id = $id;
$this->baslik = $baslik;
$this->metin = $metin;
$this->tarih = $tarih;
$this->yazan_kisi = $yazan_kisi;
}
}
class Kullanıcı
{
public $id;
public $isim;
public $soyisim;
public $email;
public $sifre;
public function __construct($id, $isim, $soyisim, $email, $sifre) {
$this->id = $id;
$this->isim = $isim;
$this->soyisim = $soyisim;
$this->email = $email;
$this->sifre = $sifre;
}
}
```
3. Adım - Sınıf Metotlarının Oluşturulması
Sınıfların oluşturulduğu şekilde, sınıf metotları da oluşturulmalıdır. Bu metotlar, siteye eklenen yazılar, yorumlar ve kullanıcılar hakkında verileri veritabanından getirirler. Ayrıca, bu metotlar aracılığıyla, yeni yazılar, yorumlar ve kullanıcılar da eklenir.
```php
class Yorum
{
public function getAll($connect) {
$sql = 'SELECT * FROM yorumlar';
$query = $connect->prepare($sql);
$query->execute();
$results = $query->fetchAll(PDO::FETCH_OBJ);
return $results;
}
public function add($connect, $yorum) {
$sql = \"INSERT INTO yorumlar (id, yorum_yapan, yorum_metni, yayin_tarihi)
VALUES (:id, :yorum_yapan, :yorum_metni, :yayin_tarihi)\";
$query = $connect->prepare($sql);
$query->bindParam(':id', $yorum->id, PDO::PARAM_STR);
$query->bindParam(':yorum_yapan', $yorum->yorum_yapan, PDO::PARAM_STR);
$query->bindParam(':yorum_metni', $yorum->yorum_metni, PDO::PARAM_STR);
$query->bindParam(':yayin_tarihi', $yorum->yayin_tarihi, PDO::PARAM_STR);
$query->execute();
}
}
class Yazı
{
public function getAll($connect) {
$sql = 'SELECT * FROM yazilar';
$query = $connect->prepare($sql);
$query->execute();
$results = $query->fetchAll(PDO::FETCH_OBJ);
return $results;
}
public function add($connect, $yazi) {
$sql = \"INSERT INTO yazilar (id, baslik, metin, tarih, yazan_kisi)
VALUES (:id, :baslik, :metin, :tarih, :yazan_kisi)\";
$query = $connect->prepare($sql);
$query->bindParam(':id', $yazi->id, PDO::PARAM_STR);
$query->bindParam(':baslik', $yazi->baslik, PDO::PARAM_STR);
$query->bindParam(':metin', $yazi->metin, PDO::PARAM_STR);
$query->bindParam(':tarih', $yazi->tarih, PDO::PARAM_STR);
$query->bindParam(':yazan_kisi', $yazi->yazan_kisi, PDO::PARAM_STR);
$query->execute();
}
}
class Kullanıcı
{
public function getAll($connect) {
$sql = 'SELECT * FROM kullanicilar';
$query = $connect->prepare($sql);
$query->execute();
$results = $query->fetchAll(PDO::FETCH_OBJ);
return $results;
}
public function add($connect, $kullanici) {
$sql = \"INSERT INTO kullanicilar (id, isim, soyisim, email, sifre)
VALUES (:id, :isim, :soyisim, :email, :sifre)\";
$query = $connect->prepare($sql);
$query->bindParam(':id', $kullanici->id, PDO::PARAM_STR);
$query->bindParam(':isim', $kullanici->isim, PDO::PARAM_STR);
$query->bindParam(':soyisim', $kullanici->soyisim, PDO::PARAM_STR);
$query->bindParam(':email', $kullanici->email, PDO::PARAM_STR);
$query->bindParam(':sifre', $kullanici->sifre, PDO::PARAM_STR);
$query->execute();
}
}
```
4. Adım - Sitede Kullanılacak Şablonların Belirlenmesi
Sitenin özelleştirilmesi ve tasarımı için, belirli bir şablon kullanın. Ayrıca, siteye ekleyeceğiniz CSS dosyaları da tasarımı daha da iyileştirebilirler.
```php
include 'header.php';
// Sayfa İçeriği
include 'footer.php';
```
5. Adım - Site İçeriğinin Kodlanması
Site içeriğini kodlamak için, sınıf metotlarını kullanarak, veritabanından gelen bilgileri içeren HTML kodları yazmanız gerekmektedir.
```php
include 'Class.php';
$connect = new PDO(\"mysql:host=\" . DB_HOST . \";dbname=\" . DB_NAME, DB_USER, DB_PASSWORD);
$connect->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Yorumlar
$yorum = new Yorum();
$yorumlar = $yorum->getAll($connect);
foreach ($yorumlar as $yorum) {
echo '
' . $yorum->yorum_metni . '
';' . $yorum->yayin_tarihi . '
';' . $yazi->metin . '
';' . $yazi->tarih . '
';' . $yazi->yazan_kisi . '
';' . $kullanici->isim . ' ' . $kullanici->soyisim . '
';' . $kullanici->email . '
';*256 Bit SSL Sertifikası * Full Mobil Uyumlu * Full SEO Uyumlu
İsterseniz Mobil Uygulama Seçeneğiyle