2009-07-28 3 views
1

은 다음과 같습니다PHP로 동적 로그인을 만들려면 어떻게해야합니까? 그것이 작동하는 방법

  • 사용자는 사용자가
  • 사용자 이름이 이메일됩니다 암호를 수신
  • 지불을하게
  • 폴더는 파일을 포함하는 사용자 생성됩니다
  • 사용자가 액세스 권한을 가지고 지불했습니다.

내 주요한 문제는 소프트웨어를 보호해야하고 암호가 동적으로 생성된다는 것입니다. 그래서 .htaccess와 .htpaaswd를 만들어야하는지 궁금합니다. 그렇다면 어떻게 동적으로이 작업을 수행 할 수 있습니까?

답변

2

아마도 Wordpress는 .htaccess 파일을 생성/수정하는 것과 같은 방법입니다.

.htpass 또는 .htaccess 파일에 대해 올바른 파일 내용을 생성하는 스크립트를 만들어야합니다.

사용자가 구매할 때 사용자/패스 조합이 들어있는 .htpass 파일에 행을 추가하고 모든 파일을 그룹 (아마도 파일 이름을 기반으로 함)에 추가하십시오. 그런 다음 해당 그룹이 해당 파일에 액세스하도록 허용하십시오.


또 다른 방법은 데이터베이스를 사용하는 것입니다.

먼저 사용자가 결제 할 때 데이터를 저장할 테이블을 몇 개 만듭니다.

첫 번째 테이블 : 사용자/암호

이 사용자의 파일에 액세스하는 데 사용되어야합니다 이메일/암호 조합을 저장합니다. 기본적으로 테이블은 다음과 같이 구성됩니다.

int Unq_ID | text Email_Addr | varchar(150) Password

사용자/패스 조합이 들어 있습니다.

두 번째 테이블 : 파일

이 표는 파일 이름, ID를 모두 보유하고 어디에 생성됩니다.

int Unq_ID | varchar(150) Name | text Directory

세 번째 테이블 : 관계

이 마지막 테이블은 사용자와 암호 사이의 관계를 보유하고 있습니다. 또한 매우 간단합니다 :

int Unq_ID | int User_ID | 사람이 유효한 사용자 이름/비밀번호로 로그인 할 경우 int Product_ID

기본적으로, 당신은 자신의 User_ID 일치 잡아 관계 항목을 이동하고 Product ID에와 파일을 가입 할 수 있습니다. 사용자가 무언가를 다운로드 할 수 있는지 확인하려면 User_IDProduct_ID이라는 항목이 있는지 확인하기 만하면됩니다.


는 액세스되는 파일을 보호 PHP의 fopen을 기능을 받아 들일 사람에서 부인이

 
RewriteEngine On 
RewriteBase/
RewriteCond %{THE_REQUEST} ^.+$ [NC] 
RewriteRule .* - [F,L] 

같은 htaccess로 파일을 확인하십시오. 그런 다음 내용을 포착 한 PHP 스크립트를 작성하여 다운로드로 제공합니다.

+0

아마도이 작업을 훨씬 쉽게 수행 할 수있는 방법이 있습니다. 잠시 후에 확장 할 것입니다. –

+0

하지만 데이터베이스를 선호하기 때문에 그렇습니다. –

+0

나는이 방법이 정말로 마음에 들었다. 데이터베이스에 대해서도 더 편하게 느끼지만, 한 가지 질문 만한다. 직접 액세스로부터 폴더를 보호하려면 어떻게해야합니까? – Carlo

관련 문제