HELLO, I’M SERHAT AND THIS IS MY FANCY TITLE.

Şifreleme algoritmaları için benchmark


Veritabanında plain-text olarak veri tutmak tehlikelidir, bu yüzden verilerimizi MD5 veya SHA gibi şifreleme yöntemleri ile şifrelememiz gerekebilir. Bu aşamada seçeceğimiz şifreleme metoduna karar vermek açısından bir performans testi yapmak gerektiğini düşündüm.

Öncelikle şu sayfayı güzelce bir inceleyin, elimizin altında bulunsun: https://dev.mysql.com/doc/refman/5.7/en/encryption-functions.html

Elinizdeki stringin, çeşitli kriptolama yöntemlerinde ortaya çıkarttığı hash hakkında bir ön görüşünüz olması için hazırladığım 'hash_generator' isimli ufak betiği de inceleyebilirsiniz. Bu betiğin kaynak kodu da Gist olarak bulunuyor.

Continue reading

PHP'de Gelen Veri Kontrolü


Formlardan gelen verileri, PHP'nin bazı metodları ile süzgeçleyebilir-kontrol edebiliriz. Bu sayede daha güvenli form işlemleri sürdürebiliriz. Bu yazıda PHP'nin bir takım fonksiyonlarından bahsedeceğim.

trim() fonksiyonu

trim() fonksiyonu, parametresiz kullanımda stringler üzerinde whitespace var ise bunları tespit eder ve devre dışı bırakır. trim() fonksiyonu str ve charlist olmak üzere 2 parametre alabilir. Kullanımı şu şekildedir:

string trim ( string $str [, string $charlist ] )

Bildiğiniz üzere burada ilk parametre zorunlu, ikinci parametre ise opsiyoneldir. İkinci parametre PHP 4.1.0 sürümünde opsiyonel olarak eklenmiştir.

Continue reading

Excel'den MySQL'e veri import etmek


Şöyle bir excel tablo yapımız olduğunu ve bunu MySQL'e import etmek istediğimizi düşünelim:

id    names    edu
1    serhat    omu
2    mustafa    odtu
3    dundar    ytu

CSV dosya formatı bu iş için biçilmiş kaftandır. Excel'de bulunan verilerimizi CSV yani comma-seperated values formatında kaydedelim.

Continue reading

Ruby günlüğü - gün 11


Ruby'de if, elsif, else, unless gibi pek çok kontrol yapısı bulunmaktadır. Bu yazıda kontrol yapılarına ilişkin bazı örnekler gösterceğim.

Ruby'de if ve unless koşulu

Tek satır için basit bir örnek:

yas = 23
puts "Yasiniz yeni yasalara gore alkol almak icin cok kucuk" if yas < 24

Multiple satır için basit bir örnek :

yas = 23
if yas < 23
  puts "Yasiniz yeni yasalara gore alkol almak icin cok kucuk"
end
Continue reading

Ruby günlüğü - gün 10


Ruby'de sözlükler (hash) oldukça geniş alanlarda kullanılabilirler. Bunu Python'da tecrübe etmiştim. Dizilerden bazı anlarda daha maharetli olacaklardır. Dizileri en basit anlamıyla, nesneler grubu olarak tanımlayabiliriz, sözlükler için de aslında bu tanım yanlış olmayacaktır. Diziler, nesnelerin tanımlanmış bir sırada ve biçimde toplu halde bulunmasıdır, hash yani sözlüklerde ise durum biraz daha farklı. Sözlükler dizilerden farklı olarak anahtar-değer mantığı ile çalışır.

sozluk = {'isim' => 'Mustafa Serhat', 'nick' => 'msdundar'}

Burada 2 adet sözlük öğemiz var. Bir tanesi isim diğeri ise nick. Bu öğeler (yani anahtarlar - key), karşılarında ki değere (value) sahip.

Continue reading