Php Fusion Veritabanı İşlemleri detaylı anlatım

Son güncellenen 7 ay önce
KREKLAM
Merhaba arkadaşlar yeniden ben....

Php fusion ile veritabanı işlemlerini biraz daha anlaşılır hale getirmek istiyorum. Eğer bu işlemleri çözerseniz php-fusion çekirdek yapısını kullanarak hükmedemeyeceğiniz tema olmaz.

php fusion maincore.php dosyasından tüm veritabanı işlemlerini fonksiyonlara dökmüş ve kullanıma hazır halde sunmuştur. Maincore.php dosyamıza bir framework gibi bakabilir. PDO'dan farkı PDO sınıftır, maincore fonksiyondur. Başka bir farkı yok...

1. Tablodan bilgi çekmek. ( dbquery() fonksiyonunun kullanımı )
dbquery($sorgu) fonksiyonu tek parametre alıyor. Fonksiyona sadece MYSQL komutları gönderiyorsunuz. Size sonuç döndürüyor. Eğer sonucunuzda birden fazla kayır varsa haliyle dize olarak dönüyor. while() döngüsü ile tek tek ulaşabiliyoruz.

Mysql Basit Sorgu Yapısı : İŞLEM + ALANLAR + TABLOADI + ŞARTLAR + SIRALAMA
SELECT + * + FROM haberler ORDER BY id ASC

*** Yukarıda verdiğim açıklama ve örnek sorguda, haber tablosunda olan tüm alanları ve kayıtları ARTAN sıralamada getir
Sorgu parametrelerinizi belirleyecek olan tek etken tablo alanlarınızdır. Şartlandırma, tarih işlemleri, aralık seçme vs. tablo alanlarına göre değişkenlik göstermektedir.

Şarta bağlı sorgu Örneği
$result=dbquery(" SELECT * FROM ".DB_NEWS." WHERE news_sticky=1 LIMIT 1 ");
Bu sorguda haber kaydedilirken başta göster, popüler yap gibi seçenek seçildiyse o veriye yani o habere erişmek için kullanılan sorgudur. Sorgu limiti belirlendiğinden sadece 1 haber çekecektir. Tek sonuç döndüğü içinde sorgu kullanmadan direk verilere ulaşabilirsiniz. Sorgu sonucunu değişkene dize olarak aktarmak için dbarray() fonksiyonunu kullanıyoruz.

*** Tek sonuç çekilecekse dbarray ve dbquery fonksiyonlarını iç içe kullanabiliriz.

Kod

  $haber=dbarray(dbquery("SELECT * FROM ".DB_NEWS." WHERE news_sticky=1 LIMIT 1 "));

  Sonuclara Erişmek için dize anahtarı olarak tablo alan adını yazmamız yetiyor. Anahtara ait değer ekrana yazdırılır...
  echo $haber["news_subject"];
 echo $haber["news_reads"];
 echo $haber["news_news"];
 echo $haber["news_extended"];


Gördüğünüz gibi çekirdek yapıdaki sorgu işlemleri PDO'dan bile kısa kod yazma imkanı sunuyor...

2. Tabloya kayıt eklemek : Mysql ile tabloya kayıt eklemek için INSERT INTO komutları kullanılır.
INSERT INTO yapısı şöyledir.
Kod

 INSERT INTO + TABLOADI + (alanlar) + VALUES + (Alanlara karşılık gelen değlerler)


Eğer haber tablosuna haber ekleyeceksek, Formdan gelen bilgilere tablo alanlarında olmalıdır.
Kod

$baslik="Haber 1";
$ozet="Haber 1 özeti (tavsiye olarak 160 karakter öneriyorum) ";
$detay="Haber 1 detay bilgileri, ek görseller hatta HTML komutlar...";

$kaydet=dbquery("INSERT INTO ".DB_NEWS." (news_subject, news_news, news_extended)
                                                                      VALUES ($baslik, $ozet, $detay)   ");


3. Tablodan veri silme. Myql de silme işlemi DELETE FROM komutuyla yapılmaktadır. Şart olarak silinecek kaydın benzersiz numarası verilir.
Kod

$sil = dbquery("DELETE FROM ".DB_NEWS." WHERE news_id=10 ");  //10 numaralı haberi siler


4. Tablodaki veriyi düzenleme : Mysqlde düzenleme/güncelleme işlemi UPDATE-SET ikilisiyle yapılır. Şart olarak düzenleme yapılacak kaydın numarası verilir. Tek Satırlık bir koddur
Kod

$duzenle = dbquery("UPDATE ".DB_NEWS." SET news_subject='Duzenlenen Baslik'  WHERE news_id=9");  // 9 numaralı kaydın başlığını tanımlandığı gibi değiştirir


birden falza alan değiştirilecekde alanla ve değerler virgülle ayrılı
Kod

$guncelle=dbquery("UPDATE ".DB_NEWS." SET news_subject='Baslik Degisiyor', news_news='Ozet bilgi degisiyor' WHERE news_id=3  ");
//3 numaralı kaydın başlığı ve özeti güncellenir.
ÇIRAK USTAYI SOLLAMAZSA SANAT ÖLÜR
HATALI SOLLARSA ÇIRAK ÖLÜR
http://www.kreklam.com
http://www.elli7.net
Bu yapabilmek forumdaki tüm tartışma konularını görüntüle.
Bu yapamamak forumda yeni bir tartışma konusu başlatın.
Bu yapamamak tartışmas konusuna cevap verin.
Bu yapamamak forumda bir anket başlat.
Bu yapamamak foruma ek dosya yükleyin.
Bu yapabilmek forumdaki ek dosyaları indir.
Tartışmaya katılan kullanıcılar:KREKLAM