html post ile ajax post arasındaki md5 şifreleme sorunu
bir login sayfasında güncelleme yaptım ve html form post yerine
ajax post ile şifreyi gönderiyorum. md5 ile şifreleyip kontrol ettigimde sanki sonuna bir boşluk ekliyormuş gibi e3 karakterini ekliyor
trimliyorum vs ama hiçbir hata bulamıyorum.
sizce sorun ne olabilir ?
html post ile md5 şifre : fc7fc678608590b123692867f176fe63
ajax post ile md5 şifre : fc7fc678608590b123692867f176fe63e3
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (3)
Merhabalar,
Örnek kod parçacığını sizinle paylaşıyorum.
<form method="post">
<input type="text" id="username">
<input type="password" id="password">
<button type="submit" id="loginBtn">Giriş</button>
</form>
$("#loginBtn").on("click",function(e){
e.preventDefault();
//trim() fonksiyonu burada gerekmemektedir. Fakat örnek olması açısından ekledim.
var password = CryptoJS.MD5($.trim($("#password").val())).toString();
var username = $("#username").val();
$.ajax({
url: "security.php",
type: "POST",
data: {LoginPage: "ok", username: username, password: password},
})
})
Belirtmiş olduğunuz md5 şifreleme sonucunu aynen almaktayım.
Muhammed Bey tam olarak sorunum şu
şifre : 258456 olarak gönderiliyor
<form>
<input type="text" name="password" >
</form>
form metoduyla php'ye gönderdiğimiz de
md5($_POST["password"];
çıktımız : fc7fc678608590b123692867f176fe63
$.ajax({
url: "security.php",
type: "POST",
data: {LoginPage: "ok", username: username, password: password},
success: function(m) {
............
}
});
ajax ile gönderdiğimizde
çıktımız : fc7fc678608590b123692867f176fe63e3
görüldüğü gibi ajax da aynı şifreye php ile md5 yapıldığında e3 ekliyor.
Merhabalar,
Umarım sorunuzu yanlış anlamadım. Aşağıda gösterdiğim şekilde doğru md5 çıktısını almaktayım.
var pass = CryptoJS.MD5(value).toString();
Ayrıca çalışması için aşağıdaki kütüphaneyi de ekledim.
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/3.1.2/rollups/md5.js"></script>