2011-01-07 2 views
0

웹 사이트 mysite.com/camera가 있고 사용자가 전자 메일 주소로 가입하고 8 자리 (숫자/문자 낮은 cse)를 할당 한 경우, 암호. 어떤 페이지에서 어떤 코드를 사용하면 로그인이 유효한지 확인한 다음 해당 조합이 이미 사용 중인지 확인합니다.한 번에 한 대의 컴퓨터에서 암호가 지정된 내 웹 사이트에 로그인하십시오

사용자 이름 비밀번호 목록은 사용자가 로그인 할 때 유효성을 검사해야하는 다른 페이지에 보관됩니다. in.

고객이 최대 한 명의 친구 만 한 번에 볼 수있는 사용자 이름/비밀번호를 공유하도록 설정하고 싶습니다.

현재 로그인이 사용되고 있지 않습니다. 지금은 공개 페이지입니다.

+0

비밀번호가 저장되는 페이지의 주소는 무엇입니까? –

답변

1

사용자 이름 암호 목록이 다른 페이지에 보관되어 있다고 가정 해보십시오. 사용자 이름/비밀번호 목록을 저장하려면 mysql과 같은 데이터베이스를 사용해야합니다. userId, email, password, key 필드가있는 테이블을 만듭니다. 여기서 userId는 ID 필드이고 key는 guid입니다.

null 필드를 허용하지 않으려면 사용자가 등록 할 때 전자 메일 필드에 전자 메일을 포함한 전자 메일 항목, 암호 필드의 암호 및 키 guid가 null 또는 초기 GUID 값으로 기본값으로 설정됩니다.

사용자가 성공적으로 로그인하면 (데이터베이스 테이블에 대해 전자 메일/암호의 유효성을 검사 함) 새 GUID를 만들고 해당 GUID를 가진 사용자의 키 필드를 업데이트하고 GUID 값을 가진 사용자의 쿠키를 삭제합니다. 로그인해야하는 사이트의 모든 페이지에서 쿠키에서 사용자의 GUID를 검색하고 데이터베이스에 쿼리하여 GUID 값이있는 항목이 있는지 확인합니다. 항목이 없으면 쿠키를 만료시키고 사용자를 로그 아웃하십시오.

로그인을 시도하는 사용자의 친구가 새로운 GUID를 생성하고 사실상 로그인을 "도용"할 수 있습니다. 초기 사용자는 더 이상 유효한 guid 쿠키가 없으며 페이지에 액세스하려고 할 때 로그 아웃됩니다.

+0

Dan 감사합니다.이 프로젝트는 몇 시간에 걸쳐 설치됩니까? HTML, PHP 및 자바 스크립트를 사용합니다. 이전에는 데이터베이스를 사용하지 않았습니다. 사용자 이름과 암호를 전달하고 쿠키를 설정하는 코드 언어는 무엇입니까? –

+0

데이터베이스 기반 사이트를 설정 한 적이 없다면 기본 속도를 높이고 기본 사항을 익히는 데 며칠이 걸릴 것입니다. PHP 또는 ASP.Net과 같은 서버 측 언어로 처리됩니다. PHP에 대해 이미 알고 있다면 mysql 데이터베이스를 설정하고 간단한 SQL 쿼리를 실행하고 실행하는 방법에 대한 자습서를 찾는 것이 좋습니다. PHP는 또한 쿠키 관리를 허용합니다. – Dan

+0

하나의 작은 의견 - 데이터베이스가 SQL Server 인 경우 특히 GUID를 사용하지 마십시오. 스토리지 측면에서 매우 비효율적 인 선택이며 클러스터링 키로서 제대로 수행되지 않습니다. 적절한 크기의 정수 ID 필드로 충분합니다 (int 또는 bigint). – Yuck

관련 문제