2009-10-07 5 views

답변

0

사용자 인증 시스템을 수행하는 방법이 많으므로 필요한 항목에 따라 다릅니다. 이것은 간단한 인증을위한 것 같습니다.

$db = new Database(); // Database abstraction class. 
$email_address = $db->esc($_POST['email']); 
$password = $db->esc($_POST['password']); 

은 무엇이 코드에서 중요한 것은 Database abstraction class입니다 :

그러나, 그들이 쓴 다음 코드를 참고하시기 바랍니다. 페이지에 연결되어 있지 않습니다. 다른 곳에서는 모르겠지만이 클래스의 가장 중요한 부분은 $db->esc()을 호출하여 사용자 입력을 이스케이프 처리하고 아마 위생 처리하는 것입니다. 은 을 피하기 위해 사용자 입력을 삭제하지 않고 데이터베이스를 호출하지 않는 것이 매우 중요합니다.

일반적으로 "esc"해당 문자는 addslashes입니다. 그러나 사용하는 데이터베이스에 따라 특정 이스케이프 기능을 데이터베이스에 저장해야한다는 내용을 읽으십시오 (예 : MySQL의 경우 mysqli_real_escape_string). 데이터베이스 추상화 클래스는 이런 종류의 물건에 정말 유용합니다 :).

+0

예, 저자는이 코드 아래에 주석을 작성합니다. "데이터베이스 데이터베이스 추상화 클래스는이 예제의 목적을 위해 데이터베이스 구현 세부 사항을 숨기는 데 사용되며 실제의 기존 라이브러리를 나타내지 않아야합니다 수업." –

+0

OK :). 나는 모든 것을 읽지 않았다. 그러나 나의 요점은, 코드의 가장 중요한 부분은 아마도 addslashes를 사용하여'$ db-> esc'를 호출하여 사용자 입력을 소독하는 것입니다. 내 편집 된 게시물을 참조하십시오 :) –

+0

가장 좋습니다! 그리고 다른 방식으로, Wikibooks 페이지가 좋다고 생각하십니까? 나는 그것을 배우기 위해 사용하고 있습니다. –

1

위키 책 페이지는 PHP의 로그인 시스템에 대한 합리적인 저수준 (즉, 라이브러리 없음) 설명이라고 생각합니다. 누락 된 항목이 많이 있지만 완료된 항목은 있습니다. 그렇지만 나는 편향되어있다. ;-)