관리 패널에 액세스하기 위해 로그인 패널을 코딩하고 있습니다. 데이터 (사용자 이름 및 암호)는 MySQL 데이터베이스 (유형 : InnoDB)에 저장됩니다. 테이블에서 암호가 일반 암호로 저장되어 있고 필드 암호에 다음과 같이 표시되어 있습니다. {일반} 암호.데이터베이스의 {일반} 비밀번호 및 로그인 오류
이미 가지고있는 코드를 수정하면 {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());
비밀번호가 잘못되어 로그인 할 수 없습니다.
이 문제를 해결하는 방법은 무엇입니까?
암호에 '{일반}'을 연결하려고 했습니까? – Nico
http://xkcd.com/327/ 참조하십시오. –
참조 : http://bobby-tables.com/ – NullUserException