MySql – Foreign Key Kontrolünü – Kısıtlamalarını Kapatmak

Standard

Aslında Türkçe mesleki anlamda kullanmak bence sağlıklı olmayabiliyor herzaman. Bu konuyu aratan kimsenin foreign key kısıtlaması diyeceğini zannetmiyorum 🙂
Disable Foreign Key Checks or Constraints desek daha sağlıklı olacaktı bence konu başlığına..

İlişkisel veritabanları ile çalışmaya başladığınız zaman hayatınıza foreign key adında yeni bir kavram girecek.
Ve ilişkili dataları kaydederken size ilişiği olan tablodaki kayıt yoksa veya başka yerde kullanılan bir datayı silmeye çalıştığınız zaman şöyle bir hata döndürür sistem:

Cannot add or update a child row: a foreign key constraint fails

Bu durumda ya deveyi güdeceksiniz yada diyardan gideceksiniz diye düşünebilirsiniz ama Hatalı kaydı bulmak bazen zor olabiliyor.

Ben size 3 satırda bu kontrol işlemini kapatmayı göstereceğim..

SET foreign_key_checks = 0; DELETE FROM users WHERE id > 45; SET foreign_key_checks = 1;

Devamını Oku..

Mysql de | (pipe) ile birleştirilmiş sahaları ayıklamak

Standard

Elinize bir veritabanı geldi diyelim. Burada programcı dataları tek kolonda pipe ( | ) ile veya başka özel karakterler ile birleştirerek saklamayı tercih etmiş diyelim.

Siz de tüm sahayı seçmek yerine içinden bir kısım almak istiyorsunuz diyelim. Bunun için size 2 yöntem göstereceğim.

Devamını Oku..

PHP ve Çoklu Dil Desteği

Standard

Günümüzde istenen her site artık çoklu dil destekli oluyor genelde..

Bunu yapmanın pek çok yolu vardır. Değişkenler şeklinde tutmak , Array içinde kay value şeklinde tutmak gibi ama bu yöntemlerin çevirmenlerin dosya array yapısını bozması gibi handikapları vardır.

Gelelim php nin bize sunmuş olduğu Gettext fonksiyonuna..

Gettext kullanabilmeniz için sunucunuzda kurulu olmalı ve phpinfo() ile baktığınızda “GetText Support enabled” yazısını görmeniz lazım.

Kurulumu test etmek için:

if (!function_exists("gettext")){ echo "gettext kullanılamaz"; } else{ echo "gettext kullanabilirsiniz"; }

Devamını Oku..

Twig Engine Kullanımı

Standard

Günümüzde yazılım ile tasarımın farklı ellerden çıkması durumunda, veya yazılımın farklı kişiler tarafından geliştirmesi gibi durumlarda şablon (template) yapısı önemli bir yer tutar.

Başta Smarty olmak üzere gerek web tasarımcısının işini kolaylaştırmak gerekse performans ihtiyaçları için farklı tasarım şablonları (template engine) geliştirilmiştir. Smarty dışında Dwoo, Savant, Rain TPL, Vivvo, Sugar gibi pek çok tempate motoru sayabiliriz. Bunlar dışında Symfony framework’un yaratıcılarından Fabien Potencier’in mevcut kodu ele alarak geliştirdiği Twig de symfony de genellikle kullanıldığı için oldukça popüler diyebiliriz.

Twig in bize kattığı en önemli özellikler:

  • Cache – Kendine has cache mekanizması sayesinde her seferinde baştan derlemek yerine sayfanın tamamı yada bir bölümünü cache ile çok daha hızlı şekilde getirebilirsiniz.
  • Sadece ve Kolay okunabilirlik – {{ degisken }} şeklinde html içerisinde kullanabilirsiniz.
  • Block yani Tasarımının yeniden kullanılabilmesi (Kalıtım)

Kısa kısa örnekler vererek biraz daha açıklamaya çalışacağım şimdi sizlere..

Önce yukarıda da belirttiğim gibi değişkenleri yazdırmayı göstereyim:

<p>{{ degisken }}</p>

Devamını Oku..

GEO Location bilgisinden Adres bilgisini almak

Standard

Selam herkese,

Bir projeniz var diyelim ve elinizde GEO kodlar var ama adresleri dinamik olarak yazdırmak istiyorsunuz, bunun için bugün sizlerle GEO kod dan Adres almak için minik ve işlevsel bir kod paylaşacağım 🙂

<?php function getAddress($lat, $lon) { $url = "http://maps.googleapis.com/maps/api/geocode/json?latlng=".$lat.",".$lon."&sensor=false"; $json = @file_get_contents($url); $data = json_decode($json); $status = $data->status; $address = ''; if($status == "OK"){ $address = $data->results[0]->formatted_address; } return $address; } echo getAddress("39.918107", "32.857472"); ?>

Devamını Oku..

SQL İle Egzersiz..

Standard

Bir arkadaşım kardeşine TOBB üniversite mühendislik bölümün de okuyor ve hocası sql ödevi vermiş.. Nasıl yaparım ederim diye geldi ve yardım istedi.. Bende biraz göz gezdirdim sorulara ve çözmeye çalıştım..

Sonra bu sorular ile karşılaşan olur diyerek aynı kitap, kitaplık, kütüphane örneğini paylaşmak istedim..

Sorumuz:

TOBB Mühendislik SQL Sorusu

Burada tablolar ve sorular yazıyor.. bende ilk 4 şıkkı oturdum geç saatte bakmaya başladım ve buyrun çözümleri:

A)

SELECT K.KNO,K.KADI FROM KITAP K,YAZAR Y, KTYAZ KT WHERE KT.KNO=K.KNO AND KT.YAZNO = Y.YAZNO GROUP BY K.KNO HAVING COUNT(KT.YAZNO) > 1

Devamını Oku..

PHP ve Hook

Standard

Word Press ile hiç işim olmadı, sadece kendime ve eşe dosta blog kurduğum kadardı ilgi alakam ancak son girmiş olduğum şirkette alınmış olan bir proje yüzünden wordpress editlemem gerekti..

Daha sonra sistemin içine girdikçe bazı durumlarda kendi kendini tetikleyen yapılar hazırlandığını gördüm. Hook.. Yada Türkçe tabiri ile kanca..

Şimdi isterseniz Hook nedir? Bakalım..

Devamını Oku..