if(md5($account['salt'].":".md5($pass)))
Хорошо ... Это создает MD5-хэш соли в базе данных и введенный пароль. И сравнивает это с ... true
. И любая непустая строка - true
. Таким образом, это условие читает , если введенный пароль вместе с хэшами соли для любой непустой строки (что будет каждый раз), впускает пользователя в .
Вы, вероятно, хотели сделать что-то вроде:
if (md5($account['salt'] . ':' . md5($pass)) === $account['password'])
^^^^^^^^^^^^^^^^^^^^^^^^