1
我正在爲我的網站設置用戶註冊的步驟。我有這樣PHP hash()函數爲不同的輸入返回相同的值
<form action="registrate-user.php" method="POST"> <br/>
Username: <input type="text" id="username" name="username" value=""> <br/>
E-mail: <input type="text" id="email" name="email" value="Secret"> <br/>
Password: <input type="password" id="password" value=""><br/>
<input id="registratebutton" type="submit" value="Register">
</form>
一種形式,像這樣
<?php
$username = $_POST['username'];
$email = $_POST['email'];
$password = $_POST['password'];
$hashedpass = hash('md5', $password);
echo $username . " " . $email . " " . $hashedpass;
?>
但是,當我輸入不同的密碼相同的值是呼應的接收器!爲什麼是這樣?
表單元素必須具有'name'屬性才能從瀏覽器傳遞到網絡服務器....所以你沒有得到任何以$ _POST ['password']傳遞的東西....所以你總是散列相同的空值 –
學習時嬰兒的腳步很好,但是應該單獨使用'md5'。它被認爲是不安全的密碼存儲。只是一個快速的「FYI」;-) –
哦,好吧,我明白。發佈它作爲答案,我會接受它作爲解決方案。 @ Fred-ii-你建議我使用哪種算法? – user3195417