Öncelikle gerekli dosyaları indirelim Buraya tıklayarak indirebilirsiniz. Dosyalar inerken tanıtıma devam edelim;
ezSQL, Justin Vincent isimli bir programcı tarafından yazılmıştır.
ezSQL Avantajları
- Küçük bir sınıftır ve sisteminize yük bindirmez.
- Sunucu ekstra yük bindirmemek için sorguları otomatik olarak önbelleğe alır ve kullanmanıza izin verir.
- Sorgularınızı kolay bir şekilde debug etme imkanı sunar. (favori avantajım)
- Kodlarınızı hızlandırır ve optimizasyon sağlar.
Yukarıdaki linkteki dosyalarda eğer hata ile karşılaşırsanız bilin ki dosyalar güncellenmiştir. Güncel dosyaları “https://github.com/ezSQL/ezSQL” şu adresten indirebilirsiniz. ezSQL’i projemize dahil etmek için index.php dosyasına aşağıdaki kodları yazarak ezSQL sınıfını çağırabiliriz. Dikkat etmeniz gereken bir husus var ki o da veritabanı bilgilerini de bu satırlarda belirtiyoruz.
<?php // ezSQL veritabanı bileşenini çağırıyoruz. include_once "ez_sql_mysqli.php"; //ezSQL çekirdegini dahil ediyoruz. include_once "ez_sql_core.php";// Veritabının bağlantı ayarlarını yapıyoruz. $veritabani_kullanici= "root"; $veritabani_parola= ""; $veritabani_adi= ""; $veritabani_sunucu= "localhost";// ezSQL sınıfını çağırarak çalıştırmaya başlıyoruz. $db = new ezSQL_mysql($veritabani_kullanici,$veritabani_parola,$veritabani_adi,$veritabani_sunucu); ?>
Veritabanınızı başarıyla bağladıysanız ufak bir örnek yapalım ve ezSQL’in fonksiyonlarını tanıyalım.
Öncelikle veritabanımızda basit bir tablo oluşturalım;
CREATE TABLE `kullanicilar` ( `id` int(11) NOT NULL, `ad` varchar(100) NOT NULL, `soyad` varchar(100) NOT NULL, `kullaniciadi` varchar(100) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;INSERT INTO `bilgi_tablosu` (`id`, `ad`, `soyad`, `kullaniciadi`) VALUES (1, 'Berkehan', 'Bendivar', 'bendivar'), (2, 'Muhammet', 'Çelebi', 'muhammet'), (3, 'Tamer', 'Çelenk', 'tcelenk'), (4, 'Rıdvan', 'Yağlı', 'ribaron'), (5, 'Emin', 'Öztürk', 'eminozturk');
ezSQL fonksiyonları
ezSQL’in en can alıcı en damardan vuran kısım fonksiyonlar. ezSQL’in en çok kullanılan 4 temel metodu vardır. Bunlar;
- $db->query
- $db->get_var
- $db->get_row
- $db->get_results
Önemli Bilgi: ezSQL’i fonksiyonlarınızda kullanacaksanız fonksiyonun başına global $db; yazmanız gerekiyor. ( Bunu en basit şöyle anlatabilirim; Veritabanınızdan ezSQL ile veri çekecekseniz eğer fonksiyonunuza bunu eklemeniz gerekiyor. )
<?php function deneme(){ global $db; } ?>
Örnek 1) Çoklu kayıtları çekme ( $db->get_results(); )
<?php
$query = $db->get_results("SELECT ad, soyad FROM kullanicilar ");
foreach($query as $row){
echo $row->ad.$row->soyad;
}
?>
Birde burada ufak bir bilgi daha paylaşayım;
Önemli Bilgi: Sorgunuzun sonunda , ARRAY_A yazmazsanız $row->ad olarak veriyi çağırırsınız. ARRAY_A eklerseniz $row[“ad”]; şeklinde çağırırsınız. Kullanım tarzı keyfinize göre değişebilir. İki şekilde de kullanabilirsiniz. Ben bazı projelerde -> ile bazılarında ise [“”] ile kullanıyorum.
<?php
$query = $db->get_results("SELECT ad, soyad FROM kullanicilar ", ARRAY_A);
foreach($query as $row){
echo $row["ad"].$row["soyad"];
}
?>
Örnek 2) Tek satırdaki bilgileri çekme ( $db->get_row(); )
<?php
$row = $db->get_row("SELECT ad, soyad FROM kullanicilar WHERE id = '1' ");
echo $row->ad.$row->soyad;
?>
Örnek 3) Tek bir bilgiyi çekme ( $db->get_var(); )
Count örneği;
<?php
$toplamKullanici = $db->get_var("SELECT count(*) FROM kullanicilar ");
echo $toplamKullanici;
?>
Satırdan veri alma örneği;
<?php
$veriAl = $db->get_var("SELECT kullaniciadi FROM kullanicilar WHERE id = '1' ");
echo "1. kaydın kullanıcı adı ".$veriAl;
?>
Örnek 4) Tabloya kayıt girme ( $db->query(); )
<?php
$kayitEkle = $db->query("INSERT INTO kullanicilar SET ad = 'Berkehan', soyad = 'Bendivar', kullaniciadi = 'bendivar' );
?>
Örnek 5) Tablodaki kaydı güncelleme ( $db->query(); )
<?php
$kayitDuzenle = $db->query("UPDATE kullanicilar SET ad = 'Berke' WHERE id = '1' ");
?>
Örnek 6) Tablodaki kaydı silme ( $db->query(); )
<?php
$kayitSil = $db->query("DELETE FROM kullanicilar WHERE id = '1' ");
?>
Örnek 6) Son sorguyu ve çıktısını görme
<?php $kayitDuzenle = $db->query("UPDATE kullanicilar SET ad = 'Berke' WHERE id = '1' "); $db->debug(); // Çıktısı /* ezSQL (v2.04) Debug.. Query [5] -- [UPDATE kullanicilar SET ad = 'Berke' WHERE id= '1'] Query Result.. No Results */ ?>
Ekstra fonksiyonlar;
$db->vardump — sonucu ve yapısını yazdırır
$db->select — yeni bir veritabanı seçer
$db->get_col_info — sutünların bilgilerini getirir
$db->hide_errors — ezSQL hatalarını deaktif eder
$db->show_errors — ezSQL hatalarını aktif eder
$db->escape — Zararlı karakterleri temizler (addslashes gibi)
$db = new db — Yeni veritabanı nesnesi oluşturur.
Kullanabileceğiniz değişkenler;
$db->num_rows – Eğer varsa son sorgudaki dönen satır sayısını verir.
$db->insert_id – INSERT sql sorgusu kullanıldığında oluşan AUTO_INCRIMENT değerini verir
$db->rows_affected – Son yapılan INSERT, UPDATE veya DELETE sql sorgularında etkilenen satır sayısını verir.
$db->num_queries – Scriptte çalıştırılan gerçek (önbellekte olmayan) sorgu sayısını verir.
$db->debug_all – Eğer true değer alırsa (Bknz: $db->debug_all = true;) Scriptteki TÜM sorguları ve TÜM sonuçları verir.
$db->cache_dir – Önbellekleme dosyalarının dizini.
$db->cache_queries – Sorgu sonuçlarını önbelleğe almayı sağlar (Bknz: mysql/disk_cache_example.php)
$db->cache_inserts – Girişleri önbelleğe alır (Bknz: mysql/disk_cache_example.php)
$db->use_disk_cache – Disk önbellek sistemini kullanmayı sağlar (Bknz: mysql/disk_cache_example.php)
$db->cache_timeout – Önbellek zaman aşım süresi (Bknz: mysql/disk_cache_example.php)
Örnek uygulamalar için dosya paylaşmıyorum ki zaten siz yukardaki kodları çoktan kopyala yapıştır yapmışsınızdır. 🙂 ezSQL’in genel kullanımını bu yazıyla öğrenmiş oldunuz. Sorununuz varsa veya anlamadığınız bir yer aşağıdaki yorum kısmına bekliyorum sizleri.
Saygı ve sevgilerimle iyi kodlar dilerim herkese…