문제 설명:
사용자가 PHP에 문제를 겪고 있습니다. 로그인 스크립트. 이 스크립트는 데이터베이스를 쿼리하고 사용자 자격 증명을 기반으로 토큰과 사용자 일반 인증 코드를 별도의 테이블에 삽입하는 것을 목표로 합니다. 그러나 스크립트는 현재 토큰 테이블을 확인하지 않습니다. 또한 사용자는 액세스 제한이 필요한 페이지에 로그인한 사용자의 사용자 이름을 표시하려고 합니다.
해결책:
1. 데이터베이스 정리:
제공된 MySQL 테이블은 안전하지 않습니다. 추가 보호를 위해 비밀번호 열은 해시 형식으로 저장되어야 합니다.
2. 로그인 기능 중앙 집중화:
여러 페이지에서 로그인 코드를 반복하는 대신 별도의 init.php 파일을 생성하여 데이터베이스 연결 및 로그인 초기화를 처리합니다. 이 파일은 로그인 기능이 필요한 모든 PHP 페이지에 포함될 수 있습니다.
3. 향상된 로그인 스크립트:
사용자 입력을 삭제하고, 데이터베이스에 대해 자격 증명을 확인하고, PHP 세션을 사용하여 로그인한 사용자 정보를 저장하려면 ajax/login.php에서 로그인 스크립트를 다시 작성하세요.
4. 로그인에 Ajax 사용:
로그인 양식에서 로그인 요청을 비동기적으로 처리하려면 Ajax를 구현하세요. 이렇게 하면 페이지를 다시 로드하는 것을 방지하고 더욱 사용자 친화적인 환경을 제공합니다.
5. 접근 제한:
로그인이 필요한 페이지의 시작 부분에 인증 확인을 추가하여 인증되지 않은 사용자를 로그인 페이지로 리디렉션합니다.
6. 사용자 이름 표시:
PHP 세션을 사용하여 로그인한 사용자의 사용자 이름을 저장합니다. 사용자 이름이 표시되어야 하는 페이지에서는 echo $_SESSION['username'];을 사용하여 값을 출력하면 됩니다.
추가 팁:
위 내용은 PHP에서 안전하고 사용자 친화적인 회원 전용 로그인 시스템을 구축하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!