我有一個PHP文件:將用戶和密碼與txt中的md5進行比較?
<?php
if (isset($_POST['submit'])) {
$file_name = 'hash.txt';
$user = md5($_POST['user']);
$password = md5($_POST['password']);
$handle = fopen('hash.txt',"r");
$read_file = file($file_name);
if ($user == $read_file[0] and $password == $read_file[1]) {
echo 'correct !';
} else {
echo 'incorrect !';
}
} else {
echo 'please input something';
}
?>
<body>
<form action="file_handle3.php" method="post">
User<input type="text" name="user"/><br/>
Password <input type="password" name="password"/>
<input type="submit" name="submit" value="submit"/>
</body>
和文件TXT:hash.txt一號線是個招呼第二個是世界
5d41402abc4b2a76b9719d911017c592
7d793037a0760186574b0282f2f435e7
我想比較做值用戶輸入並將它們轉換爲md5,然後與txt文件中的值進行比較。我不明白爲什麼我的代碼不會輸出正確的答案,即使我輸入了正確的值(user:hello密碼:世界)。對我的英文不好的朋友
如果你的.txt中有散列,那麼你應該把你的md5散列密碼與文件的散列值比較,即md5($ password)== $ read_file [1]。也許如果你以純文本的形式接收它,然後比較哈希將起作用。您也可以嘗試檢查md5($ _ POST ['password'])輸出是否與您的.txt文件中的輸出相同 – 2013-04-11 14:30:46