FlashMySQL v0.1.2


FM'nin ilk sürümünde bir türlü nasıl yapacağıma karar veremediğim bir meseleyi çözdüm. Ne olduğunu söylemeyeyim hiç. Söylesem mi yoksa? Yok söylemeyeyim. Merak eden "Benioku.txt" dosyasının aşağılarını okuyabilir. Töbe allahım yarabbim nasıl aklıma gelmemiş ya. çıt çıt çıt. Bu kadar saflık olur mu?

Neyse o işi atlattık ama Flash'tan sorgu göndermek pek de güvenli değil. Sebebi açık: sorguyu Flash'ta yazdığınız zaman PHP'nin parametreleri inceleyip, yaramaz karakterleri etkisiz hale getirmek için kullandığı fonksiyon olan mysql_real_escape_string() fonksiyonunu kullanma şansınız olmuyor. Yani ben öyle sanıyorum. Eğer bu fonksiyonun bir sorgusu varsa olabilir. O da az zahmetli iş değil yani. Fakat MYSQL Belgeleri içerisinde yaptığım gezintiler sonucunda henüz öyle bir şeye rastlamış değilim. Bakalım, anlaşılan kendi fonksiyonumuzu yazacağız.

Bu arada itiraf etmeliyim ki FlashMySQL sınıfını geliştirmeye pek hevesli değilim zira daha iyisini gördüm. "asql" adında bir sınıf var. Bizzat deneyemedim. Bu sınıf PHP dosyalarına hiç ihtiyaç duymadan flash'ın zaten desteklediği socket bağlantılarını kullanarak MySQL'e bağlanıyor. Gelen/giden veriyi binary seviyesinde işleyerek oldukça hızlı çalışıyor. Araya PHP'yi sokarak bağlanmaktan çok daha sağlam. Fakatt ciddi bir eksiği güvenlikle ilgili. Zira Actionscript'in PHP'den temel farkı Actionscript "client side", yani kullanıcının bilgisayarında işlenen, PHP ise "server side" yani sunucuda işlenen bir program. Örneğin ben MySQL'e bağlanırken PHP dosyasına çoğunlukla MySQL sunucu adresi olarak "localhost" yazıyorum. Zira MySQL sunucusu da PHP'de aynı cihazda. Böylece şifrem ve bağlantı bilgilerim kesinlikle kullanıcının bilgisayarına gitmiyor. ASQL gibi bir sistem kullandığınızda ise, şifreniz kullanıcının bilgisayarına inecektir. ASQL'i yazan arkadaşın tavsiyesi ise kullanıcı izinlerini çok iyi modifiye etmek yönünde ama ne kadar işe yarar ASQL ne kadar güvenlidir bilemiyorum. Keşke yeterince güvenli olsa ama ama ama… Ahh teknoloji ahh!


Bir cevap yazın

E-posta hesabınız yayımlanmayacak.