로그인한 날짜가 정해진 숫자 이상일 경우는 어떻게 뽑는지요 정보
로그인한 날짜가 정해진 숫자 이상일 경우는 어떻게 뽑는지요본문
깜찍한악마님의 '로그인하지 않은 회원뽑기' 팁을 사용 중인데요
로그인하지 않은 회원을 뽑을 때 3일을 지정했더니 로그인하지 않은 날이 4일이상 되는 회원은 뽑아내지 않더군요.
로그인하지 않은 날이 3일 이상이라고 하면 로그인하지 않은 날이 4일이 되어도 뽑아 낼 것 같은데 소스를 몰라서 그러니 가르쳐 주셨으면 고맙겠습니다.
사용소스
<?
include_once("./_common.php");
include_once("./_head.php");
include_once("$g4[path]/head.sub.php");
$g4[title] = "3일 이상 결석한 사람";
include_once("./_common.php");
include_once("./_head.php");
include_once("$g4[path]/head.sub.php");
$g4[title] = "3일 이상 결석한 사람";
$login_time = "3"; //지난 몇일 동안?
$today_login_time = date("Y-m-d H:i:s", $g4['server_time'] - ($login_time * 86400));
$today_login_time = date("Y-m-d H:i:s", $g4['server_time'] - ($login_time * 86400));
//페이지
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' ";
$nologin_row = sql_fetch($nologin_sql);
.
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' ";
$nologin_row = sql_fetch($nologin_sql);
.
.
.
.
댓글 전체

링크가보면 정상작동 되는게 아닌가요?...
10/2~10/3일 사이의 목록이 보입니다만....
10/2~10/3일 사이의 목록이 보입니다만....
10월2일 출석했던 5명은 나타나지 않고 있습니다.
지금 나타난 사람보다 먼저 로그인한 사람이요
지금 나타난 사람보다 먼저 로그인한 사람이요

혹 레벨이 다르지는 않은가요?
아니면 레벨적용시 문제가?....
소스를 댓글에 올려 주세요....
아니면 레벨적용시 문제가?....
소스를 댓글에 올려 주세요....
10월2일 15시 이전에 로그인한 사람은 목록에서 빠져 있습니다.
그리고 레벨은 똑같구요
그리고 레벨은 똑같구요
소스입니다
<?
include_once("./_common.php");
include_once("./_head.php");
include_once("$g4[path]/head.sub.php");
$g4[title] = "3일 이상 결석한 사람";
$login_time = "3"; //지난 몇일 동안?
$today_login_time = date("Y-m-d H:i:s", $g4['server_time'] - ($login_time * 86400));
//페이지
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' ";
$nologin_row = sql_fetch($nologin_sql);
$total_count = $nologin_row[cnt];
//$nologin_rows = $config[cf_page_rows]; //환경설정에 있는 페이지
$nologin_rows = 15; //수동으로 페이지
$total_page = ceil($total_count / $nologin_rows); // 전체 페이지 계산
if (!$page) $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $nologin_rows; // 시작 열을 구함
//처음 출력
$nologin_sql2 = " select * from $g4[member_table] where mb_today_login < '$today_login_time' and mb_level = '3' and mb_level <> '' order by mb_today_login desc limit $from_record, $nologin_rows ";
$nologin_result2 = sql_query($nologin_sql2);
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?$qstr&page=");
?>
<style type="text/css">
<!--
.style1 {
color: #0000FF;
font-weight: bold;
}
.style2 {color: #FF00FF}
.style3 {
color: #339900;
font-weight: bold;
}
.style4 {
font-size: 16px;
font-weight: bold;
color: #3300CC;
}
body {
margin-left: 17px;
margin-top: 17px;
}
.style6 {color: #E6E6FF; font-weight: bold; }
-->
</style>
<table width="630" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFECEC" style='border:1px solid #EEEEEE;' valign="top">
<tr height="30">
<td height="26" colspan="4" align="center"><span class="style4">3일 이상 결석한 사람 </span></td>
</tr>
<tr bordercolor="#FFCC99" bgcolor="#F4FFFF" height="30">
<td height="20" colspan="2" align="center">이름(아이디)</td>
<td width="37%" align="center">마지막로그인</td>
<td width="29%" align="center">포인트</td>
</tr>
<?
for ($i=0; $nologin = sql_fetch_array($nologin_result2); $i++) {
// 포인트 제거
//insert_point($nologin[mb_id], -$nologin[mb_point], "비로그인", "@No-login", $nologin[mb_id], $g4[time_ymd]);
?>
<tr bordercolor="#FFE1FF">
<td height="1" colspan="4" bgcolor="#EEEEEE"></td>
</tr>
<tr bordercolor="#FFE1FF" bgcolor="#FFF2E6" height="30">
<td width="4%" align="center" bordercolor="#FFE1FF"><div align="center"><span class="style6">*
</span></div></td>
<td width="30%" align="center"><div align="justify"><span class="style1">
<?=$nologin[mb_name]?>
(
<?=$nologin[mb_id]?>
)</span></div></td>
<td width="37%" align="center"><span class="style2">
<?=$nologin[mb_today_login]?>
</span></td>
<td width="29%" align="center"><span class="style3">
<?=$nologin[mb_point]?>
</span></td>
</tr>
<? } ?>
</table>
<p><?
include_once("$g4[path]/tail.sub.php");
?>
<?
include_once("./_common.php");
include_once("./_head.php");
include_once("$g4[path]/head.sub.php");
$g4[title] = "3일 이상 결석한 사람";
$login_time = "3"; //지난 몇일 동안?
$today_login_time = date("Y-m-d H:i:s", $g4['server_time'] - ($login_time * 86400));
//페이지
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' ";
$nologin_row = sql_fetch($nologin_sql);
$total_count = $nologin_row[cnt];
//$nologin_rows = $config[cf_page_rows]; //환경설정에 있는 페이지
$nologin_rows = 15; //수동으로 페이지
$total_page = ceil($total_count / $nologin_rows); // 전체 페이지 계산
if (!$page) $page = 1; // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $nologin_rows; // 시작 열을 구함
//처음 출력
$nologin_sql2 = " select * from $g4[member_table] where mb_today_login < '$today_login_time' and mb_level = '3' and mb_level <> '' order by mb_today_login desc limit $from_record, $nologin_rows ";
$nologin_result2 = sql_query($nologin_sql2);
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?$qstr&page=");
?>
<style type="text/css">
<!--
.style1 {
color: #0000FF;
font-weight: bold;
}
.style2 {color: #FF00FF}
.style3 {
color: #339900;
font-weight: bold;
}
.style4 {
font-size: 16px;
font-weight: bold;
color: #3300CC;
}
body {
margin-left: 17px;
margin-top: 17px;
}
.style6 {color: #E6E6FF; font-weight: bold; }
-->
</style>
<table width="630" border="1" cellpadding="0" cellspacing="0" bordercolor="#FFECEC" style='border:1px solid #EEEEEE;' valign="top">
<tr height="30">
<td height="26" colspan="4" align="center"><span class="style4">3일 이상 결석한 사람 </span></td>
</tr>
<tr bordercolor="#FFCC99" bgcolor="#F4FFFF" height="30">
<td height="20" colspan="2" align="center">이름(아이디)</td>
<td width="37%" align="center">마지막로그인</td>
<td width="29%" align="center">포인트</td>
</tr>
<?
for ($i=0; $nologin = sql_fetch_array($nologin_result2); $i++) {
// 포인트 제거
//insert_point($nologin[mb_id], -$nologin[mb_point], "비로그인", "@No-login", $nologin[mb_id], $g4[time_ymd]);
?>
<tr bordercolor="#FFE1FF">
<td height="1" colspan="4" bgcolor="#EEEEEE"></td>
</tr>
<tr bordercolor="#FFE1FF" bgcolor="#FFF2E6" height="30">
<td width="4%" align="center" bordercolor="#FFE1FF"><div align="center"><span class="style6">*
</span></div></td>
<td width="30%" align="center"><div align="justify"><span class="style1">
<?=$nologin[mb_name]?>
(
<?=$nologin[mb_id]?>
)</span></div></td>
<td width="37%" align="center"><span class="style2">
<?=$nologin[mb_today_login]?>
</span></td>
<td width="29%" align="center"><span class="style3">
<?=$nologin[mb_point]?>
</span></td>
</tr>
<? } ?>
</table>
<p><?
include_once("$g4[path]/tail.sub.php");
?>

음~~! 뽑는 소스의 문제가 아닌 출력 부분의 페이징 문제인듯 싶습니다.
즉, 뽑기는 다 뽑아 왔는데 보이지를 않는 것으로 보이네요...
페이징 처리 부분이 빠진듯 합니다.
팁게시판에는
<p>
<?=$pagelist?>이 있는데 위에는 안보입니다...
즉, 뽑기는 다 뽑아 왔는데 보이지를 않는 것으로 보이네요...
페이징 처리 부분이 빠진듯 합니다.
팁게시판에는
<p>
<?=$pagelist?>이 있는데 위에는 안보입니다...
현재 목록에 없는 5명은 어제는 있었던 것으로 보아 하루가 지나면 로그인한 날짜가 3일이상이 되면 목록에서 사라지는군요
<p>
<?=$pagelist?>를 어디에 넣어야 하지요?
<?=$pagelist?>를 어디에 넣어야 하지요?

맨 아래부분에요..
<?
include_once("$g4[path]/tail.sub.php");
?>
바로 위에
<?
include_once("$g4[path]/tail.sub.php");
?>
바로 위에

그리고
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?$qstr&page=");
를 찾아서
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?page=");
로 바꾸어 주시면 주소줄이 좀 이뻐집니다.
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?$qstr&page=");
를 찾아서
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?page=");
로 바꾸어 주시면 주소줄이 좀 이뻐집니다.
천상재회님 해결됐습니다.
감사합니다
페이지가 2쪽밖에 없는데 6쪽까지 나타나는데 이것은...
감사합니다
페이지가 2쪽밖에 없는데 6쪽까지 나타나는데 이것은...

$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?$qstr&page=");
찾아서 주석처리 하시고요
넣으신 <p> <?=$pagelist?>
바로 위에다가
<?
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?page=");
?>
넣으시고 <p> <?=$pagelist?> 는
<p align=center> <?=$pagelist?> 로 바꾸시면 종료될듯 합니다.
찾아서 주석처리 하시고요
넣으신 <p> <?=$pagelist?>
바로 위에다가
<?
$pagelist = get_paging($config[cf_write_pages], $page, $total_page, "?page=");
?>
넣으시고 <p> <?=$pagelist?> 는
<p align=center> <?=$pagelist?> 로 바꾸시면 종료될듯 합니다.
페이지가 가운데로 갔는데 페이지수는 그대로이고 2페이지로 넘어가지 않는군요?

페이지 이동은 정상적으로 되는것 아닌가요?...
익스플로러를 나갔다가 다시 들어오니까 정상이군요

음~~~!
페이지수가 많은것은 아마도 날짜별로 중복되는 아이디의 수가 포함되어 그런듯 합니다...ㅠ.ㅠ
카운터 숫자를 세는 쿼리문
//페이지
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' ";
$nologin_row = sql_fetch($nologin_sql);
$total_count = $nologin_row[cnt];
부분을 손봐야 하는뎅...ㅠ.ㅠ
페이지수가 많은것은 아마도 날짜별로 중복되는 아이디의 수가 포함되어 그런듯 합니다...ㅠ.ㅠ
카운터 숫자를 세는 쿼리문
//페이지
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' ";
$nologin_row = sql_fetch($nologin_sql);
$total_count = $nologin_row[cnt];
부분을 손봐야 하는뎅...ㅠ.ㅠ

//페이지
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' and mb_level = '3' ";
$nologin_row = sql_fetch($nologin_sql);
$total_count = $nologin_row[cnt];
//처음 출력
$nologin_sql2 = " select * from $g4[member_table] where mb_today_login < '$today_login_time' and mb_level = '3' order by mb_today_login desc limit $from_record, $nologin_rows ";
$nologin_result2 = sql_query($nologin_sql2);
두 부분 쿼리문을 바꾸어 보시겠습니까?
$nologin_sql = " select count(*) as cnt from $g4[member_table] where mb_today_login < '$today_login_time' and mb_level = '3' ";
$nologin_row = sql_fetch($nologin_sql);
$total_count = $nologin_row[cnt];
//처음 출력
$nologin_sql2 = " select * from $g4[member_table] where mb_today_login < '$today_login_time' and mb_level = '3' order by mb_today_login desc limit $from_record, $nologin_rows ";
$nologin_result2 = sql_query($nologin_sql2);
두 부분 쿼리문을 바꾸어 보시겠습니까?

잘되네요.....
위의 카운터 쿼리문에 레벨 설정을 안해서 전체에서 카운터를 해서 발생한 문제 입니다.
위의 카운터 쿼리문에 레벨 설정을 안해서 전체에서 카운터를 해서 발생한 문제 입니다.
잘 해결됐습니다. 정말 감사합니다
휴일인데도 도움을 주셔서 감사합니다. 남은 연휴 뜻있게 보내시길...
휴일인데도 도움을 주셔서 감사합니다. 남은 연휴 뜻있게 보내시길...

잘 되신다니 감사합니다....
행복한 날 되십시오....
페이징 처리 부분은 제가 알려드린대로 수정하시면 좀 깔끔(?)해 집니다.....^^
우측 스크롤메뉴의 링크도 길게 나옵니다...
그냥 noattendance.php 로 하셔도 좋을 듯 합니다.
행복한 날 되십시오....
페이징 처리 부분은 제가 알려드린대로 수정하시면 좀 깔끔(?)해 집니다.....^^
우측 스크롤메뉴의 링크도 길게 나옵니다...
그냥 noattendance.php 로 하셔도 좋을 듯 합니다.

결석생 찾기