jQuery Uzak Bir Sunucunun Çalışıp Çalışmadığını Kontrol Etmek

Merhaba. Bu yazımda sizlerle uzak bir sunucunun durumunu nasıl öğreneceğimizi aktaracağım. Bildiğiniz üzere web tabanlı çalışan uygulamaların veri alıp verdikleri JSON kaynakları çoğu zaman uzak sunucularda bulunuyor. Bu durumlar bazı zamanlarda dejavantaja dönüşebiliyor.

Kullanıcı bilgilendirmek yada işlemleri sunucu durumuna göre gerçekleştirmek için uzak sunucuda bulunan URL bilgimizi kontrol etmemiz gerekebilir. Bunları yaparken ben sunucu durum kodlarından yola çıkıyorum ve aktif olarak kullandığım bir yöntem var. Siz farklı yöntemleri de deneyebilirsiniz. Dilerseniz başlayalım.

Yöntem 2 (Bonus)

 

Offline.js ile Anlık İnternet Bağlantı Kontrolü {Çevrimdışı olduğunuzu algılamak}

JavaScript’in birçok işlevsel özelliğinden biri, belirli bir tarayıcının çevrimiçi veya çevrimdışı olup olmadığını tespit edebilmesidir. Bu işlevsellik, tarayıcınız tarafından sağlanan gezgin nesneler aracılığıyla kolaylıkla kullanılabilir; ancak kendi Javascript kodunuzu yazmaktan hoşlanmıyorsanız kullanabileceğiniz hazır bir alternatif var; offline.js kütüphanesi.

Tarayıcı çevrimiçi durumunu anlamaya neden ihtiyaç duyabilirim?

Şöyle bir senaryo düşünelim, uzun bir makale veya sekmeli formlar halinde çalışıyorsunuz, sonra tüm sevimli işlerinizi kaydetmek için “Kaydet” butonuna tıkladığınızda, bir şeyler test gidiyor, bağlantınız kopuyor boş bir sayfa kaldı yada bir bağlantı koptu mesajı görüyorsunuz karşınızda. Her birimiz daha önce böyle bir durumla maalesef ki karşılaştık; sunucu, yanıt vermediğinden veya ağ bağlantısı kesildiğinden, işlemlerimizi tamamlayamadık.

Karadüzen post veya get ile çalışan bir isteğiniz varsa da bu çok problem değildir, bağlantı koptuğu anda sayfayı yenilersiniz, parametreleriniz tekrar gönderilir. Tabii ki, modern tarayıcılar çoğunlukla önbellekte bir şeyler saklayacak ve ağ kilitlendiğinde bir cankurtaran gibi bize bir çözüm sunmaya çalışacak, ancak bazen istekler bildiğiniz gibi AJAX aracılığıyla gönderiliyor. Bu gibi durumlar her zaman daha pratik ama daha sorunsaldır, çünkü yeni içeriğinizi sunucu tarafına göndermeye çalışıncaya ve değişikliklerin etkili olmasına kadar AJAX hatalarını görebildiğiniz tek yer tarayıcı konsolunuzdur, bu aşamaya gelene kadar bir şeylerin yanlış gittiğini fark etmezsiniz, kaldı ki kaç kişi konsolu açıp işlemlerim tamamlandı mı diye kontrol ediyor? Sonuç olarak bağlantı nedeniyle sıkıntılar yaşadınız. Ama endişelenmeyin, artık bu yazıda öğreneceğiniz kütüphane ile bağlantı kontrollerinizi anlık olarak yapabileceksiniz.

Offline.js, herhangi bir web bağımlılığı olmadan çalışan ve Chrome, Firefox ve IE (sürüm 8 ve üzeri) tarafından desteklenen, gerçekten hafif bir betiktir (minikleştirilmiş ve sıkıştırılmış biçimdeki yalnızca 3 KB). Offline.js tarayıcıyı çevrimdışı duruma düştüğünde algılar, biliniyorsa yeniden bağlanma zamanı gibi göze çarpmayan ancak oldukça kullanışlı uyarılar ve ek bilgiler sağlar. Birden çok hazır CSS stili ve dili ile birlikte gelir. (Türkçe dil desteği mevcut) Öne çıkan ana özelliklerden biri AJAX (asynchronous) istek izleme işlemidir; bu nedenle üzerinde çalıştığınız sayfa yenilenmediğinde bile bağlantı sorunlarını algılayıp tepki gösterecektir.

Offline.js‘nin bunlara ulaşma biçimi oldukça basittir – belirli bir aralık başına sunucunuzdaki belirli bir dosyaya düzenli olarak bir HTTP isteği gönderir; isteği tamamlayamazsa, o zaman bir şeylerin ters gittiğini bilir ve ona göre tepki verir. Varsayılan olarak bu dosya favicon.ico olarak ayarlanmıştır, çünkü çoğu web sitesi ana dizinde bir favicon dosyası içerdiğinden bu oldukça mantıklı bir seçimdir.

Kurulum – Kullanım

Offline.js‘yi kullanmak için, .js dosyasını GitHub’dan indirmeniz ve bir tema seçmeniz yeterlidir.  Ana JavaScript dosyası, web sitenizin HEAD bölümüne eklenmelidir. Aşağıda sizlerle örnek bir kullanımı paylaşıyorum.

jQuery ile Gerçek Zamanlı Düzenlenebilir Tablo Yapısı Oluşturma – Tabledit.js

Tabledit.js, tablo hücreleriniz için AJAX özellikli düzenleme sağlayan küçük bir jQuery eklentisidir. Eklenti, hücre değerlerini doğrudan hızlı biçimde değiştirilmesine, düzenleme yapılmasına olanak sağlar.

Tabledit.js tabloların sütun alanlarına dönüştürme, özel tetikleyici etkinliklerle açılır menüleri seçme özelliklerine sahiptir. Bu yazımda sizlerle basit bir editlenebilir HTML tablo yapısı oluşturacağız.

Ayrıca bu yazı da ilginizi çekebilir: JQuery HTML İçeriği Excel’e Aktarma Uygulaması {Javascript}

Adım 1: jQuery ve tabledit kütüphaneleri sayfamıza ekleyelim.

Adım 2: Varolan tablonuzdaki eklentiyi tanımlayın ve dilediğiniz düzenlenebilir sütunları belirtin.

Adım 3: Eklenti ayarlarımızı yapalım

Bir sonraki makalemizde görüşmek üzere

Ajax- PHP MySql Dinamik Arama İşlemi (Gerçek Zamanlı Arama)

Bu yazımda PHP’yi temel dilde kullanarak Ajax Arama Kutusu oluşturacağız. Gerçek zamanlı arama, Google’ın kullandığı bir teknoloji. Web projelerinin kullanımını oldukça hızlandırıyor. Avantajları arasında sunucu üzerinde daha az yük barındırmak ta yer alıyor.Başlayalım..

Tarayıcıdan gelen GET isteğini kullanarak dinamik bir arama sistemi oluşturacağım. Tabi bu isteği son kullanıcı göremeyecek.

Aşama 1: Database

Örnek için bir veritabanı oluşturalım. phpMyAdmin arayüzünü kullanabilirsiniz. Oluşturduktan sonra aşağıdaki sorguyu çalıştıralım.

Çalıştırdıktan sonra testlerde kullanılmak üzere, tabloya biraz demo kullanıcı adları ekleyebilirsiniz.

Aşama 2: Front-End

PHP dosyasına Ajax isteği yapmak için typeahead adında bir JavaScript kitaplığı kullanıyorum. Bu tür bir amaç için özel olarak tasarlanmış düzgün ve temiz bir kütüphanedir kendisi.

Aşama 3: GET kullanarak PHP Komut Dosyasını Çağırma

Bu aşamadaki görevimiz, metin kutusuna kullanıcı yazı yazarken PHP dosyamıza istek atmak olacaktır. Bunu typehead kütüphanesini kullanarak yapıyoruz. Aşağıdaki gibi:

Dipnot: Otomatik olarak metin kutusu değerini %QUERY değişkende döndürür.

Aşama 4: MySQL’den veri alıp JSON olarak geri döndüreceğiz

İşte artık en önemli aşamadayız. Şimdiye kadar gerekli altyapımızı oluştuduk. Şimdi ise PHP dosyasında gelen parametreyi alıp, veritabanından sorugulamasını yapacağız. Geri sonuç döndüreceğiz.

Sonuç alındıktan sonra, ilgili sonucu JSON formatında paketleyeceğiz.

Lütfen parametrenizi veritabanınıza ve sütun ayrıntılarına göre değiştirin.

İşlemler tamamlandı. Gerçek zamanlı arama çalışmamızı istediğiniz şekilde kullanabilirsiniz.

Exit mobile version