12 Eylül 2015 Cumartesi

PHP'de jQuery/Ajax kullanarak arama yapma - 2.Part

Leave a Comment
Bu yazı buradaki yazının devamıdır.

Kaldığımız yerden devam ediyoruz.

Sehirler.php dosyamı açarak içerisine aşağıdaki gibi görsel ögelerimi ekliyorum.


SehirAdi şeklinde bir text alanım var. Bu alandaki yazı değiştiğinde veri tabanına giderek girilen text'e uygun kayıtları getirmem gerekiyor. Bunun için de jquery'deki "keypress" fonksiyonunu kullanacağım.

script.js dosyamın ready fonksiyonuna yazmaya başlıyorum.


Input üzerinde tuşa her tıklandığında "AjaxRequest" fonksiyonu tetiklenecek.

Şimdi AjaxRequest fonksiyonumu yazıyorum.


Görüldüğü gibi AjaxRequest fonksiyonum da son derece basit ve anlaşılır. Gelen "word" değeri ile 1.part'ta kontrol amacıyla gittiğimiz url'e istekte bulunuyoruz ve dönen json objesini SehirleriCiz fonksiyonuna gönderiyoruz.

Artık sadece SehirleriCiz fonksiyonu kaldı. O fonksiyonu da aşağıdaki gibi oluşturuyoruz.


Şimdi sayfamızı test edebiliriz.




Read More

PHP'de jQuery/Ajax kullanarak arama yapma - 1.Part

Leave a Comment
Bu yazıda PHP ile AJAX kullanımından bahsedeceğim. Facebook'ta olduğu gibi arama alanına herhangi bir şey yazmaya başladığımızda, yazdığımız kelimeye uygun sonuçları bularak aşağıda göstereceğiz.

İlk olarak kullanacağım dosyaları ve bu dosyalarda hangi işlemleri gerçekleştireceğimi özetleyeyim.


Sehirler.php dosyasına bir text input ile bir div ekleyeceğim.

conn.php dosyasında veri tabanı işlemlerini gerçekleştireceğim.

ajax.php dosyasında conn.php'den bir fonksiyon çağırıp, json döneceğim.

script.js dosyasında jquery işlemlerini gerçekleştireceğim.

jquery.js'nin ne olduğunu zaten hepimiz biliyoruzdur :)

İlk olarak veri tabanı işlemlerimi halletmek için conn.php dosyasında MySQL veri tabanı bağlantısını kuran fonksiyon ile şehirleri getiren fonksiyonu yazıyorum.


Ardından ajax.php dosyamı açarak içerisini aşağıdaki gibi düzenliyorum.


Görüldüğü gibi "op" değerine "SehirleriGetir" yazılması durumunda conn.php'de bulunan SehirleriGetir fonksiyonunu çalıştırıyoruz. Şu ana kadar yaptıklarımızı görmek için tarayıcımdan ajax.php?op=SehirleriGetir&word=ad linkine gidiyorum.


Yukarıdaki gibi bir sonuç dönüyor. Şehir isminde "ad" bulunan şehirler getirilmiş oldu. Veri tabanındaki tablomda bulunan şehirler aşağıdaki gibiydi.


Yazının çok uzun olmaması ve daha kolay takip edilebilmesi için iki parçaya ayırdım. Aşağıdaki linkten okumaya devam edebilirsiniz.

DEVAMINI OKU
Read More

19 Mart 2015 Perşembe

Android'de Bluetooth kontrolü

Leave a Comment
Bu yazıda Android uygulamalarımızda Bluetooth'un açık olup olmadığını nasıl kontrol edecebileceğimizi anlatmaya çalışacağım.

İlk olarak Bluetooth üzerinde işlem yapacağımdan, Bluetooth yetkisi için AndroidManifest.xml dosyama aşağıdaki satırları ekliyorum.




<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />

Şimdi Bluetooth'un açık mı yoksa kapalı mı olduğunu öğrenebilirim. Oluşturduğum Activity'ye kodlarımı yazmaya başlıyorum.

OnCreate fonksiyonunda BluetoothAdapter sınıfından nesne türetiyorum. Değer olarak da "BluetoothAdapter.getDefaultAdapter()" değerini veriyorum.

BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter();

Ardından "isEnabled()" fonksiyonunu kullanarak Bluetooth'un açık olup olmadığını anlıyorum ve buna göre ekranda bir toast gösteriyorum.

if(bluetooth.isEnabled()){
        Toast.makeText(this, "Bluetooth açık.", Toast.LENGTH_LONG).show();
        } else{
        Toast.makeText(this, "Bluetooth kapalı!", Toast.LENGTH_LONG).show();
        }

Sonucunda OnCreate fonksiyonu aşağıdaki gibi oldu.

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        BluetoothAdapter bluetooth = BluetoothAdapter.getDefaultAdapter();
        if(bluetooth.isEnabled()){
        Toast.makeText(this, "Bluetooth açık.", Toast.LENGTH_LONG).show();
        } else{
        Toast.makeText(this, "Bluetooth kapalı!", Toast.LENGTH_LONG).show();
        }
    }

Artık uygulamamı kontrol edebilirim. Run ediyorum ve Bluetooth'um kapalı olduğu için aşağıdaki mesajı görüyorum.








Read More

14 Şubat 2015 Cumartesi

SQL'de aynı içeriğe sahip kayıtları bulma ve silme

1 comment
Bu yazıda, SQL ile aynı içeriğe sahip farklı kayıtların (duplicate rows) nasıl bulunacağını ve bulunan bu kayıtların nasıl silineceğini anlatmaya çalışacağım.

Futbolcular adında bir tablomuz olduğunu düşünelim. Bu tablodaki kayıtlar da aşağıdaki gibi olsun.


Tabloda görebileceğiniz üzere Diego ve Mehmet Topal'ın olduğu satırlar birbirleriyle primary key'leri yani ID kolonu hariç birebir aynı. Caner Erkin'in olduğu satırlarda ise yalnızca FormaNo kolonları farklı.

İlk olarak primary key dışındaki tüm alanları aynı olan kolonları getirelim.

SELECT MAX(ID) as ID, Ad, Soyad, FormaNo FROM Futbolcular
GROUP BY Ad, Soyad, FormaNo
HAVING COUNT(*) > 1

Bu sorguyu çalıştırdığımda bana Ad, Soyad ve FormaNo alanları eşit olan kayıtların en büyük ID'ye sahip olanlarını getirmesi gerekiyor. Sorguyu çalıştırıyorum ve sonuç aşağıdaki gibi.


Şimdi ise FormaNo alanını sorgudan çıkardığımda Caner Erkin'in sonuçlar arasına eklenip eklenmediğine bakacağım. Sorgumu aşağıdaki gibi değiştiriyorum.

SELECT MAX(ID) as ID, Ad, Soyad FROM Futbolcular
GROUP BY Ad, Soyad
HAVING COUNT(*) > 1

Sonuç olarak FormaNo alanının eşit olma durumu aranmadığı zaman Caner de sonuçlar arasında görünüyor.


Bu kayıtları silmek istediğimizde ise aşağıdaki gibi bir sorgu kullanabiliriz.

DELETE FROM Futbolcular
WHERE ID IN
( SELECT MAX(ID) as ID FROM Futbolcular
GROUP BY Ad, Soyad, FormaNo
HAVING COUNT(*) > 1)
Read More