RadarURL

조회 수 8823 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부


///////////////////////////////////////////////////////////////////


2005.09.25 3차 수정됨


//////////////////////////////////////////////////////////////////


회원가입시.. 비밀번호에 대한 힌트와 답을 받은후...
비밀번호를 분실할경우..
가입시 입력했던..
비밀번호에 대한 힌트와 답을 가지고.. 비밀번호를 웹에서 바로 찾는 기능입니다..


먼저 다운 받은 파일을 압축해제한후 lost_pass폴더안에 보시면 2개의 파일이 있습니다.
이파일을 제로보드 폴더(bbs)안에 넣어주세요.


이제 파일을 좀 수정해야됩니다..
수정부분은 그리 어렵지 않으니.. 잘 따라해주세요..^^


bbs/member_join.php를 php전용 에디터로 엽니다.
3번째 line ...
include "lib.php"; 다음 줄에 아래소스를 넣습니다.


require_once "function_lost.php";


124번째 line...
if(!write.name.value) { alert("이름을 입력하세요"); write.name.focus(); return false; }


위 소스 다음줄에 아래소스를 넣습니다.


if(!write.passwordmd1.value) { alert("비밀번호 분실 항목을 선택해주세요."); write.passwordmd1.focus(); return false; }
if(!write.passwordmd.value) { alert("비밀번호 분실 답을 입력하세요"); write.passwordmd.focus(); return false; }


241 ~ 248번째 line...
<tr align=right height=28>
<td style=font-family:Tahoma;font-size:8pt;><b>E-mail </td>
<td align=left> <input type=text name=email size=50 maxlength=255 value="<?=$member[email]?>" style=border-color:#d8b3b3 class=input>
<input type=checkbox value=1 name=open_email checked> 공개
</td>
</tr><tr>
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr>


위 소스 다음줄에 아래소스를 넣습니다.


<tr height="28" align="right">
<td style="font-family:Tahoma;font-size:8pt;"><b>비밀번호분실 <b></td>
<td align="left" style="padding-left: 4px"> <select style="font-family:Tahoma;font-size:8pt;" name="passwordmd1">
<option value="">선택하십시오.</option>
<?=lost_option($lost_list,$passwordmd1)?>
</select></td>
</tr>   
<tr>
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr>
<tr height="28" align="right">
<td style="font-family:Tahoma;font-size:8pt;"><b>분실시 답변 <b></td>
<td align="left" style="padding-left: 4px"> <input type="text" style="height:20px;" name="passwordmd" size="50" maxlength="255" value="<?=$passwordmd?>" style="border-color:#d8b3b3" class="input">        </td>
</tr>
<tr>
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr>


이제 저장한 후 bbs/member_join_ok.php를 php전용 에디터로 엽니다.


3번째 line...
include "lib.php"; 다음줄에 아래소스를 추가합니다.


require_once "function_lost.php";


71번째 line....
if($check[0]>0) Error("이미 등록되어 있는 주민등록번호입니다","");
$jumin=$jumin1.$jumin2;
}


위 소스 다음줄에 아래소스를 추가합니다.


if(isBlank($passwordmd1)) Error("비밀번호 분실 항목을 선택하셔야 합니다.");
if(isBlank($passwordmd)) Error("비밀번호 분실 답을 입력하셔야 합니다");


116번째 line...
mysql_query("insert into $member_table (level,group_no,user_id,password,name,email,homepage,icq,aol,msn,jumin,comment,job,hobby,home_address,home_tel,office_address,office_tel,handphone,mailing,birth,reg_date,openinfo,open_email,open_homepage,open_icq,open_msn,open_comment,open_job,open_hobby,open_home_address,open_home_tel,open_office_address,open_office_tel,open_handphone,open_birth,open_picture,picture,open_aol) values ('$group_data[join_level]','$group_data[no]','$user_id',password('$password'),'$name','$email','$homepage','$icq','$aol','$msn',password('$jumin'),'$comment','$job','$hobby','$home_address','$home_tel','$office_address','$office_tel','$handphone','$mailing','$birth','$reg_date','$openinfo','$open_email','$open_homepage','$open_icq','$open_msn','$open_comment','$open_job','$open_hobby','$open_home_address','$open_home_tel','$open_office_address','$open_office_tel','$open_handphone','$open_birth','$open_picture','$picture_name','$open_aol')") or error("회원 데이타 입력시 에러가 발생했습니다<br>".mysql_error());


위 소스를 삭제하고 아래소스를 넣습니다.


mysql_query("insert into $member_table (level,group_no,user_id,password,name,email,homepage,icq,aol,msn,jumin,comment,job,hobby,home_address,home_tel,office_address,office_tel,handphone,mailing,birth,reg_date,openinfo,open_email,open_homepage,open_icq,open_msn,open_comment,open_job,open_hobby,open_home_address,open_home_tel,open_office_address,open_office_tel,open_handphone,open_birth,open_picture,picture,open_aol,passwordmd,passwordmd1) values ('$group_data[join_level]','$group_data[no]','$user_id',password('$password'),'$name','$email','$homepage','$icq','$aol','$msn',password('$jumin'),'$comment','$job','$hobby','$home_address','$home_tel','$office_address','$office_tel','$handphone','$mailing','$birth','$reg_date','$openinfo','$open_email','$open_homepage','$open_icq','$open_msn','$open_comment','$open_job','$open_hobby','$open_home_address','$open_home_tel','$open_office_address','$open_office_tel','$open_handphone','$open_birth','$open_picture','$picture_name','$open_aol','$passwordmd','$passwordmd1')") or error("회원 데이타 입력시 에러가 발생했습니다<br>".mysql_error());


이제 저장한 후 member_modify.php를 php전용 에디터로 엽니다.


3번째 line...
include "lib.php"; 다음줄에 아래 소스를 넣습니다.


require_once "function_lost.php";


69번째 line...
if(!write.name.value) { alert("이름을 입력하세요"); write.name.focus(); return false; }


위 소스 다음줄에 아래 소스를 넣습니다.


if(!write.passwordmd1.value) { alert("비밀번호 분실 항목을 선택해주세요."); write.passwordmd1.focus(); return false; }
if(!write.passwordmd.value) { alert("비밀번호 분실 답을 입력하세요"); write.passwordmd.focus(); return false; }


161 ~ 169번째 line...
<tr height=28 align=right>
<td style=font-family:Tahoma;font-size:8pt;><b>E-mail </td>
<td align=left> <input type=text name=email size=40 maxlength=255 value="<?=$member[email]?>" style=border-color:#d8b3b3 class=input>
<input type=checkbox value=1 name=open_email <?=$check[$member[open_email]]?>> 공개
</td>
</tr>       
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr> 


위 소스 다음줄에 아래 소스를 넣습니다.


<tr height="28" align="right">
<td style="font-family:Tahoma;font-size:8pt;"><b>비밀번호분실 <b></td>
<td align="left" style="padding-left: 4px"> <select style="font-family:Tahoma;font-size:8pt;" name="passwordmd1">
<option value="">선택하십시오.</option>
<?=lost_option($lost_list,$member[passwordmd1])?>
</select></td>
</tr>   
<tr>
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr>
<tr height="28" align="right">
<td style="font-family:Tahoma;font-size:8pt;"><b>분실시 답변 <b></td>
<td align="left" style="padding-left: 4px"> <input type="text" style="height:20px;" name="passwordmd" size="40" maxlength="255" value="<?=htmlspecialchars($member[passwordmd])?>" style="border-color:#d8b3b3" class="input">        </td>
</tr>
<tr>
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr>


이제 저장한 후 member_modify_ok.php를 php전용 에디터로 엽니다.


3번째 line...
include "lib.php"; 다음줄에 아래 소스를 넣습니다.


require_once "function_lost.php";


23번째 line...
if($check[0]>0) Error("이미 등록되어 있는 E-Mail입니다"); 다음줄에 아래 소스를 넣습니다.


if(isblank($passwordmd1)) Error("비밀번호 분실 항목을 선택하셔야 합니다.");
if(isblank($passwordmd)) Error("비밀번호 분실 답을 입력하셔야 합니다");


63번째 line ...
$que.=",openinfo='$openinfo',open_email='$open_email',open_homepage='$open_homepage',open_icq='$open_icq',open_msn='$open_msn',open_comment='$open_comment',open_job='$open_job',open_hobby='$open_hobby',open_home_address='$open_home_address',open_home_tel='$open_home_tel',open_office_address='$open_office_address',open_office_tel='$open_office_tel',open_handphone='$open_handphone',open_birth='$open_birth',open_picture='$open_picture',open_aol='$open_aol' ";


위 소스를 삭제하고 아래 소스를 넣습니다.


$que.=",openinfo='$openinfo',open_email='$open_email',open_homepage='$open_homepage',open_icq='$open_icq',open_msn='$open_msn',open_comment='$open_comment',open_job='$open_job',open_hobby='$open_hobby',open_home_address='$open_home_address',open_home_tel='$open_home_tel',open_office_address='$open_office_address',open_office_tel='$open_office_tel',open_handphone='$open_handphone',open_birth='$open_birth',open_picture='$open_picture',open_aol='$open_aol',passwordmd='$passwordmd',passwordmd1='$passwordmd1' ";


이제 저장한 후..


lostid.php를 php전용에디터로 열어 안에 들어있는 소스를 전부 지우고,,,
그자리에 아래소스를 넣습니다..


<html>
<head>
<title>웹페이지 대화상자--</title>
<meta http-equiv="Content-Type" content="text/html; charset=euc-kr">
</head>
<body style="border: 0;">
<?
include "lib.php";
require_once "function_lost.php";
function errormessage ($str){
  echo '
    <script>
      window.alert ("'.$str.'");
      history.go(-1);
    </script>
  ';
  exit;
}


$connect = dbconn();
if($_POST['mode'] == 'modifyi')
{
if(!eregi($HTTP_HOST,$HTTP_REFERER)) Error("정상적으로 접근해 주시길 바랍니다.","");
if($_SERVER['REQUEST_METHOD'] != 'POST') Error("정상적으로 접근해 주시길 바랍니다.","");
if(!$_POST['user_id'] && !$_POST['email']) Error("값을 입력해 주십시오.","");
if(isblank($user_id)) errormessage("아이디를 입력하여 주십시오");
if(isblank($email)) errormessage("이메일을 입력하여 주십시오");
$result=mysql_query("select * from zetyx_member_table where user_id='$user_id' and email='$email'",$connect) or Error(mysql_error());
if(!mysql_num_rows($result)) errormessage("입력하신 정보에 해당하는 회원이 없습니다.");
else {
$data=mysql_fetch_array($result);
echo '
<script>
function check_submit(){
if(!user_password.email.value) {alert("이메일을 입력하여 주십시오"); user_password.email.focus(); return false; }
if(!user_password.passwordmd1.value) { alert("비밀번호 분실 힌트를 선택해주세요"); user_password.passwordmd1.focus(); return false; }
if(!user_password.passwordmd.value) {alert("분실시 입력한 답을 입력해주세요."); user_password.passwordmd.focus(); return false; } 
return confirm("정확하게 입력하셨습니까?");
}
</script>
<table align="center" height="100%" cellspacing="5" cellpadding="7" style="width:250px;background-color:#f9f9f9;">
<col width="100%" />
<tr>
<td align="center" style="border-width:1px;border-color:#f0f0f0;border-style:solid;background-color:#ffffff;white-space:nowrap;">
<table width="100%" height="100%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td align="center">
<table width="350" cellspacing="0" cellpadding="0" border="0">
<form name="user_password" action="/'.$PHP_SELF.'" method="post" onsubmit="return check_submit()">
<input type="hidden" name="mode" value="modify">
<tr>
<td align="center" colspan="2" style="font-family: 굴림;font-size: 12px;padding-bottom: 6px;padding-top: 6px;">2차 인증 페이지입니다. 안녕하세요 <b>'.$data[name].'</b>님^^<br />가입당시 비밀번호 힌트에 대한 답을 입력해주세요.
</td>
</tr>
<tr>
<td align="right" height="24" style="font-family: 굴림;font-size: 12px">이메일 
</td>
<td style="padding-left: 4px"><input type="text" name="email" value="'.$email.'" style="font-family:굴림;font-size: 12px;color:#000000;background-color:#FFFFFF;border:1px solid #CCCCCC;width:288px;height:18px;">
</td>
</tr>
<tr>
<td align="right" height="24" style="font-family:굴림;font-size:12px">힌트 
</td>
<td style="padding-left: 4px"><select style="font-family:Tahoma;font-size:8pt;" name="passwordmd1">
<option value="">선택하십시오.</option>
'.lost_option($lost_list,$data[passwordmd1]).'
</select>
</td>
</tr>
<tr>
<td align="right" height="24" style="font-family:굴림;font-size:12px">답 
</td>
<td style="padding-left: 4px"><input type="text" name="passwordmd" maxlength="255" style="font-family:굴림;font-size: 12px;color:#000000;background-color:#FFFFFF;border:1px solid #CCCCCC;width:288px;height:18px;">
</td>
</tr>
<tr>
<td align="right" colspan="2" style="padding-top: 6px;padding-right: 18px"><input type="image" onfocus="this.blur()" src="images/lo_ok.gif"> <a onclick="self.close();" style="cursor:pointer;" onfocus="this.blur()"><img src="images/lo_close.gif" border="0"></a>   
</td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
';
}
}
elseif($_POST['mode'] == 'modify')
{
if(!eregi($HTTP_HOST,$HTTP_REFERER)) Error("정상적으로 접근해 주시길 바랍니다.","");
if($_SERVER['REQUEST_METHOD'] != 'POST') Error("정상적으로 접근해 주시길 바랍니다.","");
if(!$_POST['email'] && !$_POST['passwordmd1'] && !$_POST['passwordmd']) Error("값을 입력해 주십시오.","");
if(isblank($email)) errormessage("이메일을 입력하여 주십시오");
if(isblank($passwordmd1)) errormessage("비밀번호 분실 힌트를 선택해주세요.");
if(isblank($passwordmd)) errormessage("분실시 입력한 답을 입력해주세요.");
 
$result=mysql_query("select * from zetyx_member_table where email='$email' and passwordmd='$passwordmd' and passwordmd1='$passwordmd1'",$connect) or Error(mysql_error());
 
if(!mysql_num_rows($result)) errormessage("입력하신 정보에 해당하는 회원이 없습니다.");
else {
$data=mysql_fetch_array($result);
$pass_temp=substr(md5(date('YmdHis')),1,12);
mysql_query("update $member_table set password=password('$pass_temp') where no='$data[no]'",$connect) or Error(mysql_error());
echo '
<table align="center" height="100%" height="100%" cellspacing="5" cellpadding="7" style="width:250px;background-color:#f9f9f9;">
<col width="100%" />
<tr>
<td align="center" style="border-width:1px;border-color:#f0f0f0;border-style:solid;background-color:#ffffff;white-space:nowrap;">
<table width="100%" height="100%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td align="center">
<table width="350" cellspacing="0" cellpadding="0" border="0">
<tr>
<td align="center" style="font-family: 굴림;font-size: 12px;padding-bottom: 6px;padding-top: 6px;line-height: 140%">
'.stripslashes($data[name]).'님의 새로운 비밀번호가 발급되었습니다.<br />임시 비밀번호는 <b>'.$pass_temp.'</b> 입니다.<br />로그인후 필히 회원정보에서 비밀번호를 변경하시길 바랍니다.
</td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
';
}
}
else{
echo '
<script>
function check_submit(){
if(!user_password.user_id.value) {alert("아이디를 입력하여 주십시오"); user_password.user_id.focus(); return false; }
if(!user_password.email.value) {alert("이메일을 입력하여 주십시오"); user_password.email.focus(); return false; }
return confirm("정확하게 입력하셨습니까?");
}
</script>
<table align="center" height="100%" cellspacing="5" cellpadding="7" style="width:250px;background-color:#f9f9f9;">
<col width="100%" />
<tr>
<td align="center" style="border-width:1px;border-color:#f0f0f0;border-style:solid;background-color:#ffffff;white-space:nowrap;">
<table width="100%" height="100%" cellspacing="0" cellpadding="0" border="0">
<tr>
<td align="center">
<table width="350" cellspacing="0" cellpadding="0" border="0">
<form name="user_password" action="/'.$PHP_SELF.'" method="post" onsubmit="return check_submit()">
<input type="hidden" name="mode" value="modifyi">
<tr>
<td align="center" colspan="2" style="font-family: 굴림;font-size: 12px;padding-bottom: 6px;padding-top: 6px;"><b>1차 인증 페이지입니다.</b><br />가입당시 아이디,이메일을 입력하여 주십시오.
</td>
</tr>
<tr>
<td align="right" height="24" style="font-family: 굴림;font-size: 12px">아이디 
</td>
<td style="padding-left: 4px"><input type="text" name="user_id" style="font-family:굴림;font-size: 12px;color:#000000;background-color:#FFFFFF;border:1px solid #CCCCCC;width:288px;height:18px;">
</td>
</tr>
<tr>
<td align="right" height="24" style="font-family: 굴림;font-size: 12px">이메일 
</td>
<td style="padding-left: 4px"><input type="text" name="email" style="font-family:굴림;font-size: 12px;color:#000000;background-color:#FFFFFF;border:1px solid #CCCCCC;width:288px;height:18px;">
</td>
</tr>
<tr>
<td align="right" colspan="2" style="padding-top: 6px;padding-right: 18px"><input type="image" onfocus="this.blur()" src="images/lo_ok.gif"> <a onclick="self.close();" style="cursor:pointer;" onfocus="this.blur()"><img src="images/lo_close.gif" border="0"></a>   
</td>
</tr>
</form>
</table>
</td>
</tr>
</table>
</td>
</tr>
</table>
';
}
?>
</body>
</html>


이제 수정한 member_join.php member_join_ok.php member_modify.php member_modify_ok.php lostid.php
5개의 수정한 파일을 ftp로 접속해 제로보드 폴더(bbs)안에 넣어 기존 파일에 덮어주세요.


마지막으로...
http://홈주소/bbs/dbmysql.php 를 한번 실행해줍니다.
실행한 후에는 dbmysql.php파일은 삭제합니다..


이것으로 모든 과정이 끝났으니..
가입,정보수정,비밀번호찾기등등... 테스트를 해보십시오..^^


윈도우 서버 RWAPM 프로젝트
http://rwapm.com 

?

공부 게시판

공부에 도움되는 글을 올려주세요.

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 [공지] 공부 게시판 입니다. 처누 2003.08.18 931254
2503 유닉스/리눅스 리눅스 서버 설치 중 에러 "Failed to find a suitable stage1 device" JaeSoo 2025.10.03 37
2502 유닉스/리눅스 Linux 11 . Linux 설치 시 lvm 수동설정 JaeSoo 2025.10.03 28
2501 유닉스/리눅스 [Rocky Linux] 누구나 쉽게 따라하는 Rocky Linux 9.0 OS 다운로드 및 설치 방법~!! JaeSoo 2025.10.03 42
2500 유닉스/리눅스 Linux/Rocky Linux Rocky Linux : Composer 설치 JaeSoo 2025.09.29 43
2499 유닉스/리눅스 [Rocky Linux] 록키 리눅스 최신 업데이트 적용 방법 JaeSoo 2025.09.29 44
2498 유닉스/리눅스 rocky linux 커널 업데이트 JaeSoo 2025.09.29 36
2497 웹서버,WAS [Windows] OWASP ZAP 사용법 JaeSoo 2025.09.29 50
2496 웹서버,WAS [웹 취약점] 웹서버 디렉토리 리스팅 방지 JaeSoo 2025.09.29 52
2495 유닉스/리눅스 Clonezilla(클론질라) 백업파일 하드디스크로 복구 방법 JaeSoo 2025.09.28 44
2494 유닉스/리눅스 클론질라 사용 방법 - OS 이미지 백업 CloneZilla JaeSoo 2025.09.28 57
2493 유닉스/리눅스 [Linux / Rocky] FTP 접속 관련 설정 실습 예제 JaeSoo 2025.09.23 73
2492 유닉스/리눅스 Could not reliably determine the server's fully qualified domain name JaeSoo 2025.09.23 72
2491 유닉스/리눅스 [아파치] 아파치 웹서버에 .htaccess 파일 설정하는 방법 JaeSoo 2025.09.23 65
2490 유닉스/리눅스 [Linux] Apache web server의 rewrite module 사용하기 [출처] [Linux] Apache web server의 rewrite module 사용하기|작성자 g00dmoney JaeSoo 2025.09.23 61
2489 유닉스/리눅스 록키 리눅스 9.1에서 apache, mysql, PHP 설치 JaeSoo 2025.09.23 68
2488 유닉스/리눅스 [권한문제] 라이믹스 Fatal error: Uncaught Rhymix\Framework\Exception: Cannot write template cache file JaeSoo 2025.09.23 57
2487 유닉스/리눅스 라이믹스 php 에러 표시 JaeSoo 2025.09.23 53
2486 유닉스/리눅스 Rocky Linux - 라이믹스(Rhymix) 설치하기 JaeSoo 2025.09.23 50
2485 유닉스/리눅스 라이믹스(Rhymix) 매뉴얼 JaeSoo 2025.09.23 46
2484 유닉스/리눅스 [ Apache ] 아파치 start/stop/restart 명령어 JaeSoo 2025.09.23 37
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 126 Next
/ 126


즐겨찾기 (가족)

JAESOO's HOMEPAGE


YOUNGAE's HOMEPAGE


장여은 홈페이지


장여희 홈페이지


장여원 홈페이지


즐겨찾기 (업무)

알리카페 홀릭

숭실대 컴퓨터 통신연구실 (서창진)

말레이시아 KL Sentral 한국인 GuestHouse


즐겨찾기 (취미)

어드민아이디

유에코 사랑회

아스가르드 좋은사람/나쁜사람

JServer.kr

제이서버 메타블로그

재수 티스토리


즐겨찾기 (강의, 커뮤니티)

재수 강의 홈페이지


한소리


VTMODE.COM


숭실대 인공지능학과


숭실대 통신연구실


베너