Привет Я новичок в PHP программирования и попытался создать зашифрованный пароль, но проблема всегда генерировать тот же md5 для различных паролей, и я не могу войти, используя login.php Вот мой кодPHP ошибка синтаксиса базы данных
<?php
$name = $_POST['name'];
$password = md5($_POST['password']);
if($name && $password){
mysql_connect("localhost","root","") or die(mysql_error);
mysql_select_db("myfirstdatabase") or die(mysql_error);
$query = mysql_query("SELECT * FROM usernames WHERE name='$name'");
$numrows = mysql_num_rows($query);
if ($numrows != 0){
while ($row = mysql_fetch_assoc($query)){
$dbname = $row['name'];
$dbpassword = $row['password'];
}
if ($name==$dbname){
if($password==$dbpassword){
header("location: users.php");
}else {
echo "Your password is incorrect!";
}
}else{
echo "Your name is incorrect!";
}
}else {
echo "Name is not registered!";
}
}else{
echo "You have to type a name and password";
}
?>
Использование 'md5' несоленые к "хэш" пароли, используя' 'mysql_ * функции ... Что это, 2005? –
Прошу прощения, что я новичок в программировании, и я изучаю источник, который у меня есть. –
Ваш источник плохой. Вы должны найти более свежий. Для начала используйте пароли ['password_hash'] (http://php.net/password-hash) и [' password_verify'] (http://php.net/password-verify) для паролей. Не 'md5'. Этот материал не был безопасным в течение многих лет. –