Php PDO ile veritabanı bağlantısı nasıl yapılır?

Merhabalar bu yazımda php programlama dilinde PDO yöntemi ile Mysql veritabanı bağlantısı yapılır onu anlatacağım. Bağlantıyı yapmadan önce bilgisayarınızda xampp ı veya xampp a benzer local server oluşturmanıza yarayan programlardan birinin kurulu o olduğunu var sayıyorum. Kurulu değilse buraya tıklayarak bilgisayarınıza xampp ı kurabilirsiniz.

Proje dosyası oluşturalım.

Öncelikle bir tane proje dosyası oluşturalım. Ben visual studio code programını kullanıyorum Size de kullanmanızı öneririm. Proje dosyasının içerisine index.php ve connect.php dosyalarını oluşturalım. Dosya isimlerini kişisel olarak kendinizde belirleyebilirsiniz. connect yerine baglan da yazabilirsiniz yani. Sadece isimlerde türkçe karakter kullanmamaya özen göstermeniz yeterli olacaktır.

Local server veritabanı oluşturma

Şimdi ise bilgisayarımızda yüklü olan xampp ın Control Panelinin çalıştıralım. Arama kutusuna xampp yazılması durumunda en başta karşımıza çıkacaktır. Eğer çıkmaz ise ya bilgisayarınızda xampp yüklü değildir(Uygulama kısmından yüklü olup olmadığını kontrol edebilirsiniz) yada arama kutusunda gözükmüyor olabilir. xampp ın kurulu dosya konumuna giderek dosya klasörünün içindeki xampp-control-panel.exe dosyasını çalıştırınız. Ardından çıkan panelden apache ve Mysql e start deyiniz.

Veritabanı oluşturulması

Xampp ı çalıştırdıktan sonra bir tarayıcı açarak(chrome, firefox vs.) adres çubuğuna “http://localhost/phpmyadmin/” yazarak phpmyadmin sayfasını açınız. Login sayfasına yönlendirileceksiniz. xampp için kullanıcı adınız:root ,şifre ise yoktur yani şifre girmeyeceksiniz. Ardından giriş butonuna tıklayınız. Login sayfası gelmeden direk girişte yapabilir. Karşınıza şu şeklide bir panel gelecek.


Veritabanları yazan yere tıklayınız. Açılan sayfada oluşturmak istediğiniz veritabanının ismini giriniz. Ardından türünü seçiniz. Genel anlamda utf8_general_ci kullanılmaktadır. Ardından oluştur tuşuna tıklayarak veritabanını oluşturunuz.
<?php try { $db = new PDO(“mysql:host=localhost;dbname=test”, “root”, “123456”); } catch ( PDOException $e ){ print $e->getMessage(); } ?>

Veritabanı bağlantısı nasıl yapılır?

Oluşturduğumuz proje dosyasının içindeki connect.php doyasını açınız. Ardında aşağıdaki resimdeki komutları yazınız.
veritabanı bağlantısı kodu
try {} catch [} hata komutlarıdır. try içerisine yazılan konutlar hatasız çalışır ise sıkıntı yok. Eğer try içerisine yazılan kodlarda bir hata var ise catch içerisindeki kodlar devreye girecektir. Şimdi biz try içerisinde new PDO() diyerek yeni bir veritabanı bağlantısı oluşturacağımızı söylüyoruz.

mysql:host=localhost; ==> Local server da bulunan mysql veri tabanı bağlantısı yapılacağı anlamına geliyor.
dbname=test ==> Buraya oluşturduğunuz veritabanı ismini yazacaksınız. Biz bu yazımızda deneme veritabanının ismini yazıyoruz. Yani test yerine deneme yazıyoruz.
root ==> Veritabanı kullanıcı ismini yazacaksınız. Xampp ta kullanıcı adı root olarak tanımlanmıştır. Genel anlamda bir çok localserver programında root olarak tanımlanır.
123456 ==> Veritabanı kullanıcı şifreniz giriniz. Xampp ta varsayılan olarak şifre yoktur. Siz eğer appserv kullanıyorsanız yükleme sırasında girdiğiniz kullanıcı şifresini giriniz.

Şimdi küçük bir örnek ile alıştırma yapalım.

Örnek:

Küçük bir deneme adında bir klasör oluşturdum. Ardında içerisine connect.php dosyasını oluşturdum. Yazının başında oluşturduğumuz deneme veritabanına bağlanıyoruz.

php-veritabanı-bağlantısı-örnek

Çıktı:

php-veritabanı-bağlantısı-çıktı

Hatalı Çıktı

Veritabanı isminde küçük bir hata yapalım ne gibi bir çıktı verecek dedim. Oda bu şekilde oluyor.

php-veritabanı-bağlantısı-hatalı-çıktı
catch içerisine yazılan kodlama ile hatanın nerede olduğuna dair bir mesaj çıktısı verdi. En son echo ile yazdığımız mesaj ekrana basıldı. Buradaki hatamız veritabanı ismini yanlış yazmamız olduğu açıkca belli oluyor.

Evet bu yazımda sizlere en basitinden Php de PDO ile nasıl mysql veritabanı bağlantısı yapılır onu anlattım. Umarım faydasını görmüşsünüzdür. Bir sonraki blog yazımda görüşmek üzere sağlıkla kalın.

Lütfen bir yorum bırakınız

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir