웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
세션을 이용한 관리자 모드 구축하기 2강
2003.12.09 01:25
이제 로그인 아이디와 패스워드를 확인하는 페이지를 만들어 볼까합니다.
우선 동일한 폴더에 아이디와 패스워드를 적어서 /inc/setup.inc는 파일을 만듭니다.
이 페이지에는 admin/admin 이런식으로 아이디와 패스워드를 적어야 합니다. 여기서 /는 explode 함수의
구분자가 됩니다. 주의 하세요.
그다음 login_ok.php를 만들어야 겠네요.
<? session_start();
function error_msg($msg){
echo"<script language=javascript>
alert('$msg');
history.gp(-1);
</script>
}
?>
<?
$fp=fopen("inc/setup.inc","r");
if(!$fp){
echo"
<script language=javascript>
alert('파일을 열지 못했습니다.');
</script>
";
exit();
}
$str=fread($fp,100);
$db=explode("/",$str);
fclose($fp);
// 디비파일에서 관리자 아이디와 비밀번호를 가져옴
$admin_id = $db[0];
$admin_pw = $db[1];
if(strcmp($id,$admin_id)){
error_msg('아이디가 일치하지 않습니다.');
exit;
}else if(strcmp($pw,$admin_pw)){
error_msg('비밀번호가 일치하지 않습니다.');
exit;
}else{
session_register("adminid","adminpw");
$adminid = $admin_id;
$adminpw = $admin_pw;
echo ("<meta http-equiv='Refresh' content='0; URL='이동경로'>");
}
?>
이제 login_ok.php 파일을 생성했습니다.
그다음은 세션파일을 이용해서 로그인을 한것인지 아닌지를 검사해 로그인 했으면 특정페이지로 이동하는
login_yes.php 파일을 만들겠습니다.
우선 동일한 폴더에 아이디와 패스워드를 적어서 /inc/setup.inc는 파일을 만듭니다.
이 페이지에는 admin/admin 이런식으로 아이디와 패스워드를 적어야 합니다. 여기서 /는 explode 함수의
구분자가 됩니다. 주의 하세요.
그다음 login_ok.php를 만들어야 겠네요.
<? session_start();
function error_msg($msg){
echo"<script language=javascript>
alert('$msg');
history.gp(-1);
</script>
}
?>
<?
$fp=fopen("inc/setup.inc","r");
if(!$fp){
echo"
<script language=javascript>
alert('파일을 열지 못했습니다.');
</script>
";
exit();
}
$str=fread($fp,100);
$db=explode("/",$str);
fclose($fp);
// 디비파일에서 관리자 아이디와 비밀번호를 가져옴
$admin_id = $db[0];
$admin_pw = $db[1];
if(strcmp($id,$admin_id)){
error_msg('아이디가 일치하지 않습니다.');
exit;
}else if(strcmp($pw,$admin_pw)){
error_msg('비밀번호가 일치하지 않습니다.');
exit;
}else{
session_register("adminid","adminpw");
$adminid = $admin_id;
$adminpw = $admin_pw;
echo ("<meta http-equiv='Refresh' content='0; URL='이동경로'>");
}
?>
이제 login_ok.php 파일을 생성했습니다.
그다음은 세션파일을 이용해서 로그인을 한것인지 아닌지를 검사해 로그인 했으면 특정페이지로 이동하는
login_yes.php 파일을 만들겠습니다.
댓글 6
-
SeePaGae
2004.01.23 19:34
-
로크
2004.06.11 21:02
/inc/setup.inc 내용
<?
$db = "ID/PASS";
?> -
박정호
2004.11.01 01:57
예를 들었는데 오해의 소지가 있네요... 아이디 : admin 패스워드가 : admin 이어서 admin/admin으로 표기했습니다^^;; -
해피정닷컴
2006.05.25 10:08
위쪽 소승에서 코드가 약간 누락되었네요..
<? session_start();
function error_msg($msg){
echo"<script language=javascript>
alert('$msg');
history.gp(-1);
</script>
"; // <== 누락된 코드....
}
?> -
해피정닷컴
2006.05.25 16:59
제일 아래부분의 일부가 잘못되어있네요..
}else{
$adminid = $admin_id;
$adminpw = $admin_pw;
// 순서가 변경되야 세션이 저장될껍니다.
session_register("adminid","adminpw");
echo ("<meta http-equiv='Refresh' content='0; URL=이동경로'>"); // 수정했음
} -
해피정닷컴
2006.05.25 17:04
login_ok.php 는 아래와 같이 작성하셔야 합니다.
<? session_start();
function error_msg($msg){
echo"<script language=javascript>
alert('$msg');
history.go(-1); // 오타 수정
</script>
}
?>
<?
$fp=fopen("login_pw.php","r"); // 로그인 파일명 변경
if(!$fp){
echo"
<script language=javascript>
alert('파일을 열지 못했습니다.');
</script>
";
exit();
}
$str=fread($fp,100);
$db=explode("/",$str);
fclose($fp);
// 디비파일에서 관리자 아이디와 비밀번호를 가져옴
$admin_id = $db[0];
$admin_pw = $db[1];
if(strcmp($id,$admin_id)){
error_msg('아이디가 일치하지 않습니다.');
exit;
}else if(strcmp($pw,$admin_pw)){
error_msg('비밀번호가 일치하지 않습니다.');
exit;
}else{
$adminid = $admin_id;
$adminpw = $admin_pw;
session_register("adminid","adminpw"); // 위치변경
echo ("<meta http-equiv='Refresh' content='0; URL=이동경로'>"); // ' 뺌
}
?>
login_pw 아이디 / 비밀번호 저장하는 파일 ... 아래와 같이 ID/PW 글자외는 기록하지 마세요
다른 것을 입력하면 비밀번호 오류 납니다.
admin/admin
제목 | 글쓴이 | 날짜 |
---|---|---|
로그인 문제 및 첨부파일 안올라가는 문제 해결책(세션 문제일 경우..) [6] | 이홍석295 | 2008.08.20 |
권한 문제 때문에 생길 수 있는 문제 해결 방안 | 꽃들 | 2008.08.14 |
오픈 아이디(OpenID)로만 로그인 허용하기 [7] | withover.com | 2008.08.07 |
로그인이 안되는 문제 [1] | 젝망치 | 2008.07.21 |
게시판(블로그)상단에 글쓰기버턴이나 링크넣기 [8] | 팔공산 | 2008.07.20 |
업그레이드 쉽고,안전하게 하기(예제 포함해서 다시 올림) [2] | wannabewize | 2008.07.13 |
최근게시물에 권한주어서 회원만 내용물보게하기 [1] | 팔공산 | 2008.07.11 |
최고관리자 이외에는 ''회원정보보기''를 막기 [13] | 비나무 | 2008.07.10 |
방명록 스킨을 통한 글 작성시 임시저장 가능케 하기(수정) | 라르게덴 | 2008.07.08 |
1.04 엡데이트후 재설치등으로 로그인안될때 해결법 [5] | 좀비이 | 2008.07.08 |
1차 메뉴에서 하위 메뉴 없을때 생기는 여백 없애는 방법 [7] | 제로시오 | 2008.07.04 |
회원 가입시 admin이 가입 승인이후 동작시키도록 변경!! [1] | dhseo | 2008.06.02 |
제로보드와 플래시 게시판 연동해서 사용하기 [5] | Park Ki-tae | 2008.05.30 |
설문조사에서 로그인하지 않은 사용자는 투표하지 못하도록 수정하기 [3] | mooo | 2008.05.29 |
IE6 한글도메인에 ZBXE 때문에 속 썩이시는 분 [1] | 햇살과수원 | 2008.05.26 |
보안로그인 사용시 기본포트가 아닐 경우 [2] | bluemind69 | 2008.05.20 |
홈페이지에 닉네임 대신 실명으로 뜨게 만들기 [5] | findwind | 2008.05.19 |
오른쪽 상단에 로그인 정보 출력하기 (게시판 만으로) | youngminpark | 2008.05.15 |
주문형게시판 만들기 [22] | 팔공산 | 2008.05.04 |
windows Live writer로 게시글 쓰기 [3] | tindrum | 2008.04.29 |
if($id!=$admin_id) Error_Msg("Error. No Collect Your Id"); exit;
이렇게 하시는게 더 편하지 않을까요? -_-;;; 똑같은데 말이죠..