我正在編寫一個登錄面板來訪問管理面板。 數據(用戶名和密碼)存儲在MySQL數據庫(類型:InnoDB)中。 查看錶中密碼存儲爲普通和在我有的字段密碼: {純}密碼。數據庫中的{plain}密碼和登錄錯誤
修改我已有的代碼,我遇到了一些問題,因爲{plain}事情讓我困惑了一下。
我的舊代碼是:
// Construct SQL statement for query & execute
$sql = "SELECT * FROM table WHERE user = '" . $username . "' AND password = '" . md5($password) . "'";
$result = $mysqli->query($sql) or die(mysql_error());
所以,如果我取代從外地「{普通}密碼」中與MD5密碼數據庫,代碼的偉大工程,但如果我修改我的代碼如下:
// Construct SQL statement for query & execute
$sql = "SELECT * FROM table WHERE user = '" . $username . "' AND password = '" . $password . "'";
$result = $mysqli->query($sql) or die(mysql_error());
我無法登錄,因爲密碼錯誤!
任何想法如何解決這個問題?
您是否嘗試將「{plain}」連接到密碼? – Nico 2012-07-19 14:34:39
請參閱http://xkcd.com/327/ – 2012-07-19 14:36:30
另請參閱:http://bobby-tables.com/ – NullUserException 2012-07-19 14:39:09