• 12-09-2015, 20:33:56
    #10
    pg13 adlı üyeden alıntı: mesajı görüntüle
    böyle yazdırmana gerek yok.
    mysql'e eklerken addslashes() komutunu kullan, çektikten sonra yazdırırken de stripslashes() komutunu kullan.
    biliyorum üstad... ama sitelerden bir tanesi script ve eleman bir dosyayı ioncube ile şifrelemiş o dosyadan dolayı bu şekilde kaydediyor sanırım.
  • 12-09-2015, 21:10:36
    #11
    Varsayımınız yanlış olduğu için yanlış yollara savrulmuşsunuz. Pratikte bir kaç yol var uygun olanı kullanırsınız:

    Hangi yöntem olursa olsun şifreler md5 veya farklı bir metot ile geri döndürülemez şekilde veritabanında saklanır.

    Yöntem 1-
    Gizli soru ve cevap yöntemi kullanın. Bunları elbette siteye kayıt olurken sormanız lazım üyeye. Veritabanında bu bilgileri saklarsınız ve şifremi unuttum sayfasında üyeye sorarsınız. Eğer doğru ise yeni bir sayfaya yönlendirirsiniz yeni şifrenizi yazın dersiniz Update edersiniz.

    Yöntem 2-
    Veritabanında bir alan ekleyin ismi Token olsun. Şifremi unuttum sayfasına gelince eposta adresini istersiniz. Eğer doğru yazar ise rastgele bir değer üretin ve o eposta sahibinin satırındaki Token alanında o şifreli değeri saklayın. Bu yaptıklarınızı kullanıcı görmeyecek elbette. Sadece epostayı doğru yazınca yeni bir sayfada eposta adresinize gelen linke tıklayın diye mesaj gösterin. Sonra kullanıcının eposta adresine bir link göndereceksiniz. Mesela http://www.adres.com/demo/eposta/ind...sd234da432we23 gibi bir adres göndereceksiniz. Kullanıcı bu linke tıkladığı zaman geldiği php sayfasında token doğrumu kontrol edeceksiniz. Eğer doğru ise o zaman yeni bir sayfaya yönlendireceksiniz. O sayfada yeni şifre isteyip Update işlemi yapacaksınız.

    Yöntem 3-
    İkinci yöntem ile aynı ancak bu defa link göndermeyeceksiniz. Şifremi unuttum sayfasında eposta adresini yazınca 5-6 haneli bir sayı üreteceksiniz ve token alanına kaydedeceksiniz. Ekstra bir alan daha ekleyebilirsiniz tokenSonTarih diye. Burada da token değerinin geçerli olacağı son tarihi kaydedebilirsiniz. Mesela 6 saat içinde o token değerini kullanması gereksin diye belirleyebilirsiniz. Ürettiğiniz güvenlik kodunu eposta ile kullanıcıya göndereceksiniz. Kullanıcı epostasını açıp değerini güvenlik kodu yazacağı sayfada doğru yazınca yeni şifre belirleme sayfasına yönlendireceksiniz.

    Daha farklı yöntemler vs. olabilir ancak birbirine göre farklı avantaj ve dezavantajları olabilir. Klasik olarak bu yöntemleri kullanabilirsiniz.
  • 12-09-2015, 21:41:19
    #12
    emerald adlı üyeden alıntı: mesajı görüntüle
    Varsayımınız yanlış olduğu için yanlış yollara savrulmuşsunuz. Pratikte bir kaç yol var uygun olanı kullanırsınız:

    Hangi yöntem olursa olsun şifreler md5 veya farklı bir metot ile geri döndürülemez şekilde veritabanında saklanır.

    Yöntem 1-
    Gizli soru ve cevap yöntemi kullanın. Bunları elbette siteye kayıt olurken sormanız lazım üyeye. Veritabanında bu bilgileri saklarsınız ve şifremi unuttum sayfasında üyeye sorarsınız. Eğer doğru ise yeni bir sayfaya yönlendirirsiniz yeni şifrenizi yazın dersiniz Update edersiniz.

    Yöntem 2-
    Veritabanında bir alan ekleyin ismi Token olsun. Şifremi unuttum sayfasına gelince eposta adresini istersiniz. Eğer doğru yazar ise rastgele bir değer üretin ve o eposta sahibinin satırındaki Token alanında o şifreli değeri saklayın. Bu yaptıklarınızı kullanıcı görmeyecek elbette. Sadece epostayı doğru yazınca yeni bir sayfada eposta adresinize gelen linke tıklayın diye mesaj gösterin. Sonra kullanıcının eposta adresine bir link göndereceksiniz. Mesela http://www.adres.com/demo/eposta/ind...sd234da432we23 gibi bir adres göndereceksiniz. Kullanıcı bu linke tıkladığı zaman geldiği php sayfasında token doğrumu kontrol edeceksiniz. Eğer doğru ise o zaman yeni bir sayfaya yönlendireceksiniz. O sayfada yeni şifre isteyip Update işlemi yapacaksınız.

    Yöntem 3-
    İkinci yöntem ile aynı ancak bu defa link göndermeyeceksiniz. Şifremi unuttum sayfasında eposta adresini yazınca 5-6 haneli bir sayı üreteceksiniz ve token alanına kaydedeceksiniz. Ekstra bir alan daha ekleyebilirsiniz tokenSonTarih diye. Burada da token değerinin geçerli olacağı son tarihi kaydedebilirsiniz. Mesela 6 saat içinde o token değerini kullanması gereksin diye belirleyebilirsiniz. Ürettiğiniz güvenlik kodunu eposta ile kullanıcıya göndereceksiniz. Kullanıcı epostasını açıp değerini güvenlik kodu yazacağı sayfada doğru yazınca yeni şifre belirleme sayfasına yönlendireceksiniz.

    Daha farklı yöntemler vs. olabilir ancak birbirine göre farklı avantaj ve dezavantajları olabilir. Klasik olarak bu yöntemleri kullanabilirsiniz.
    çok teşekkürler ayrıntılı güzel bir açıklama olmuş herkes için