글 수 151
### 이 팁을 적용 시키신 분들은 아래 링크의 멤버리스트 & 회원관리 페이지를 다운받아 사용하시면 편리합니다.
https://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&select_arrange=headnum&desc=asc&no=2940
### 이 팁을 적용 시키기 전 반드시 아래글을 보시고 필드를 추가하셔야 합니다.
■■ 로그인 회수, 로그인 점수, 최근 로그인 시각 적용하기 ■■
1. 적용 방법
☞ 회원이 로그인을 할 때마다 로그인 회수를 1회 증가
☞ 마지막(최근) 로그인 시각과 현재 시각과의 차이가 있을 시 최근 로그인 시각 업데이트
☞ 최근 로그인 시각과 현재 시각과의 차이가 3시간 이상 날때 로그인 점수 1점 증가
2. 수정할 파일들(3개, 관리자 모드는 수정 안하겠음)
☞ 로그인을 처리해 주는 파일(login_check.php)에서 1의 3가지를 모두 처리
☞ 개인정보(member_modify.php)에서 자신의 로그인 회수, 로그인 점수, 최근 로그인 시각을 보여줌
☞ 쪽지 보내기에서 회원정보를 열람할 때(view_info_2.php) 로그인 회수, 로그인 점수, 최근 로그인 시각을 보여줌
※※※ 참고로 자동로그인을 사용할 경우 login_check.php를 거치지 않기 때문에 로그인 기록에 남지 않습니다.
아이디/비밀번호를 넣고 로그인 할 경우에만 디비에 기록이 됩니다.
3. 파일 수정
■ login_check.php 파일
[수정 전] 40~42번 라인
===================================================================================
session_register("zb_last_connect_check");
// 로그인 후 페이지 이동
===================================================================================
[수정 후]
===================================================================================
session_register("zb_last_connect_check");
$login_time = mktime(); // 현재시각 구함
$lastlogin = $member_data[lastlogin]; // 최근 로그인 시각 구해 옴
if($login_time-$lastlogin > 0) // 최근 로그인 시각과 현재 시각의 차이가 있을 시 로그인 회수 1회 증가, 최근 로그인 시간 현재시각으로 저장
@mysql_query("update $member_table set point3=$member_data[point3]+1, lastlogin=$login_time where no=$member_data[no]",$connect) or error(mysql_error());
if($login_time-$lastlogin >= 3*3600) //최근 로그인 시각에서 3시간이 경과했으면 로그인 점수 1점 증가
@mysql_query("update $member_table set point4=$member_data[point4]+1 where no=$member_data[no]",$connect) or error(mysql_error());
// 로그인 후 페이지 이동
===================================================================================
■ member_modify.php 파일
[수정 전] 34~37번 라인 // DB에서 로그인 정보를 가져옴
===================================================================================
$member[comment] = stripslashes($member[comment]);
// 그룹데이타 읽어오기;;
===================================================================================
[수정 후]
===================================================================================
$member[comment] = stripslashes($member[comment]);
$member[point3] = stripslashes($member[point3]);
$member[point4] = stripslashes($member[point4]);
if($member[lastlogin] != "")
$member[lastlogin] = date("Y-m-d A h:i:s",stripslashes($member[lastlogin]));
else
$member[lastlogin] = "기록 없음";
// 그룹데이타 읽어오기;;
===================================================================================
[수정 전] 314~319번 라인 // 정보 나타내기
===================================================================================
<tr height=28 align=right>
<td style=font-family:Tahoma;font-size:8pt;>Point</td>
<td align=left> <?=($member[point1]*10+$member[point2])?> 점 ( 작성글수 : <?=$member[point1]?>, 코멘트 : <?=$member[point2]?> )</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;>Point</td>
<td align=left> <?=($member[point1]*10+$member[point2])?> 점 ( 작성글수 : <?=$member[point1]?>, 코멘트 : <?=$member[point2]?> )</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;>Login Point</td>
<td align=left style=font-family:Tahoma;font-size:8pt;> <?=$member[point3]?> 회 <?=$member[point4]?> 점 ## Last Login : <?=$member[lastlogin]?></td>
</tr> <tr>
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr>
===================================================================================
■ view_info_2.php 파일
[수정 전] 23~25번 라인 // DB에서 로그인 정보를 가져옴
===================================================================================
$data[comment] = stripslashes($data[comment]);
$temp_name = get_private_icon($data[no], "2");
===================================================================================
[수정 후]
===================================================================================
$data[comment] = stripslashes($data[comment]);
$data[point3] = stripslashes($data[point3]);
$data[point4] = stripslashes($data[point4]);
if($data[lastlogin] != "")
$data[lastlogin] = date("Y-m-d A h:i:s",stripslashes($data[lastlogin]));
else
$data[lastlogin] = "기록 없음";
$temp_name = get_private_icon($data[no], "2");
===================================================================================
[수정 전] 213~217번 라인 // 정보 나타내기
===================================================================================
<tr>
<td align=right><img src=images/vi_point.gif align=absmiddle> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=($data[point1]*10+$data[point2])?> 점 ( 작성글수 : <?=$data[point1]?>, 코멘트 : <?=$data[point2]?> )</td>
</tr>
</table>
===================================================================================
[수정 후]
===================================================================================
<tr>
<td align=right><img src=images/vi_point.gif align=absmiddle> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=($data[point1]*10+$data[point2])?> 점 ( 작성글수 : <?=$data[point1]?>, 코멘트 : <?=$data[point2]?> )</td>
</tr>
<tr>
<td align=right><span style="font-size:8pt;"><b><font color="#885959" face="Tahoma">Login</font></b></span> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=$data[point3]?> 회 <span style="font-size:8pt;"><b><font color="#885959" face="Tahoma">Login Point</font></b></span> : <?=$data[point4]?> 점</td>
</tr>
<tr>
<td align=right><span style="font-size:8pt;"><b><font color="#885959" face="Tahoma">Last Login</font></b></span> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=$data[lastlogin]?></td>
</tr>
</table>
===================================================================================
https://www.nzeo.com/bbs/zboard.php?id=cgi_tip&page=1&sn1=&divpage=1&sn=off&ss=on&sc=off&select_arrange=headnum&desc=asc&no=2940
### 이 팁을 적용 시키기 전 반드시 아래글을 보시고 필드를 추가하셔야 합니다.
■■ 로그인 회수, 로그인 점수, 최근 로그인 시각 적용하기 ■■
1. 적용 방법
☞ 회원이 로그인을 할 때마다 로그인 회수를 1회 증가
☞ 마지막(최근) 로그인 시각과 현재 시각과의 차이가 있을 시 최근 로그인 시각 업데이트
☞ 최근 로그인 시각과 현재 시각과의 차이가 3시간 이상 날때 로그인 점수 1점 증가
2. 수정할 파일들(3개, 관리자 모드는 수정 안하겠음)
☞ 로그인을 처리해 주는 파일(login_check.php)에서 1의 3가지를 모두 처리
☞ 개인정보(member_modify.php)에서 자신의 로그인 회수, 로그인 점수, 최근 로그인 시각을 보여줌
☞ 쪽지 보내기에서 회원정보를 열람할 때(view_info_2.php) 로그인 회수, 로그인 점수, 최근 로그인 시각을 보여줌
※※※ 참고로 자동로그인을 사용할 경우 login_check.php를 거치지 않기 때문에 로그인 기록에 남지 않습니다.
아이디/비밀번호를 넣고 로그인 할 경우에만 디비에 기록이 됩니다.
3. 파일 수정
■ login_check.php 파일
[수정 전] 40~42번 라인
===================================================================================
session_register("zb_last_connect_check");
// 로그인 후 페이지 이동
===================================================================================
[수정 후]
===================================================================================
session_register("zb_last_connect_check");
$login_time = mktime(); // 현재시각 구함
$lastlogin = $member_data[lastlogin]; // 최근 로그인 시각 구해 옴
if($login_time-$lastlogin > 0) // 최근 로그인 시각과 현재 시각의 차이가 있을 시 로그인 회수 1회 증가, 최근 로그인 시간 현재시각으로 저장
@mysql_query("update $member_table set point3=$member_data[point3]+1, lastlogin=$login_time where no=$member_data[no]",$connect) or error(mysql_error());
if($login_time-$lastlogin >= 3*3600) //최근 로그인 시각에서 3시간이 경과했으면 로그인 점수 1점 증가
@mysql_query("update $member_table set point4=$member_data[point4]+1 where no=$member_data[no]",$connect) or error(mysql_error());
// 로그인 후 페이지 이동
===================================================================================
■ member_modify.php 파일
[수정 전] 34~37번 라인 // DB에서 로그인 정보를 가져옴
===================================================================================
$member[comment] = stripslashes($member[comment]);
// 그룹데이타 읽어오기;;
===================================================================================
[수정 후]
===================================================================================
$member[comment] = stripslashes($member[comment]);
$member[point3] = stripslashes($member[point3]);
$member[point4] = stripslashes($member[point4]);
if($member[lastlogin] != "")
$member[lastlogin] = date("Y-m-d A h:i:s",stripslashes($member[lastlogin]));
else
$member[lastlogin] = "기록 없음";
// 그룹데이타 읽어오기;;
===================================================================================
[수정 전] 314~319번 라인 // 정보 나타내기
===================================================================================
<tr height=28 align=right>
<td style=font-family:Tahoma;font-size:8pt;>Point</td>
<td align=left> <?=($member[point1]*10+$member[point2])?> 점 ( 작성글수 : <?=$member[point1]?>, 코멘트 : <?=$member[point2]?> )</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;>Point</td>
<td align=left> <?=($member[point1]*10+$member[point2])?> 점 ( 작성글수 : <?=$member[point1]?>, 코멘트 : <?=$member[point2]?> )</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;>Login Point</td>
<td align=left style=font-family:Tahoma;font-size:8pt;> <?=$member[point3]?> 회 <?=$member[point4]?> 점 ## Last Login : <?=$member[lastlogin]?></td>
</tr> <tr>
<td colspan="5" bgcolor="#EBD9D9" align="center"><img src="images/t.gif" width="10" height="1"></td>
</tr>
===================================================================================
■ view_info_2.php 파일
[수정 전] 23~25번 라인 // DB에서 로그인 정보를 가져옴
===================================================================================
$data[comment] = stripslashes($data[comment]);
$temp_name = get_private_icon($data[no], "2");
===================================================================================
[수정 후]
===================================================================================
$data[comment] = stripslashes($data[comment]);
$data[point3] = stripslashes($data[point3]);
$data[point4] = stripslashes($data[point4]);
if($data[lastlogin] != "")
$data[lastlogin] = date("Y-m-d A h:i:s",stripslashes($data[lastlogin]));
else
$data[lastlogin] = "기록 없음";
$temp_name = get_private_icon($data[no], "2");
===================================================================================
[수정 전] 213~217번 라인 // 정보 나타내기
===================================================================================
<tr>
<td align=right><img src=images/vi_point.gif align=absmiddle> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=($data[point1]*10+$data[point2])?> 점 ( 작성글수 : <?=$data[point1]?>, 코멘트 : <?=$data[point2]?> )</td>
</tr>
</table>
===================================================================================
[수정 후]
===================================================================================
<tr>
<td align=right><img src=images/vi_point.gif align=absmiddle> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=($data[point1]*10+$data[point2])?> 점 ( 작성글수 : <?=$data[point1]?>, 코멘트 : <?=$data[point2]?> )</td>
</tr>
<tr>
<td align=right><span style="font-size:8pt;"><b><font color="#885959" face="Tahoma">Login</font></b></span> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=$data[point3]?> 회 <span style="font-size:8pt;"><b><font color="#885959" face="Tahoma">Login Point</font></b></span> : <?=$data[point4]?> 점</td>
</tr>
<tr>
<td align=right><span style="font-size:8pt;"><b><font color="#885959" face="Tahoma">Last Login</font></b></span> </td>
<td align=left><img src="images/t.gif" width="10" height="3"><br><?=$data[lastlogin]?></td>
</tr>
</table>
===================================================================================