우

쪽지 페이징 처리하는 방법좀...

· 2007-04-09 (월) 14:41:24 · 1938 · 7
쪽지 페이징 처리하는 방법을 도저히 모르겠네요..
고수님들 방법 좀 가르쳐 주세요!!!
|

댓글 7개

이스킨에서 페이징 처리 부분을 참고 하세요.
http://sir.co.kr/bbs/tb.php/g4_skin/13368
참고하였는데 변경된 사항이 많은 스킨이었습니다.
오리지널 버전으로 접목시켜보니 적용되질 않더군요...
변경된 사항이 많더라도 다른 부분은 무시하고 페이징 처리 부분만 빼와서 적용 시키면 됩니다. 참고로 페이지 처리를 하기 위해선 원본과 스킨 모두 수정해야 합니다.
bbs/memo.php

<?
include_once("./_common.php");

if (!$member[mb_id])
alert_close("회원만 이용하실 수 있습니다.");

$g4[title] = "내 쪽지함";
include_once("$g4[path]/head.sub.php");

// 설정일이 지난 메모 삭제
$sql = " delete from $g4[memo_table]
where me_recv_mb_id = '$member[mb_id]'
and me_send_datetime < '".date("Y-m-d H:i:s", $g4[server_time] - (86400 * $config[cf_memo_del]))."' ";
sql_query($sql);

if (!$kind) $kind = "recv";

if ($kind == "recv")
$unkind = "send";
else if ($kind == "send")
$unkind = "recv";
else
alert("\$kind 값을 넘겨주세요.");

$sql = " select count(*) as cnt from $g4[memo_table] where me_{$kind}_mb_id = '$member[mb_id]' ";
$row = sql_fetch($sql);
$total_count = number_format($row[cnt]);
//$rows = 3;
$rows = $config[cf_write_pages];
$total_page = ceil($total_count / $rows);
if (!$page) { $page = 1; }
$from_record = ($page - 1) * $rows;


if ($kind == "recv")
{
$kind_title = "받은";
$recv_img = "on";
$send_img = "off";
}
else
{
$kind_title = "보낸";
$recv_img = "off";
$send_img = "on";
}

$list = array();
/*
$sql = " select a.*, b.mb_id, b.mb_nick, b.mb_email, b.mb_homepage
from $g4[memo_table] a
left join $g4[member_table] b on (a.me_{$unkind}_mb_id = b.mb_id)
where a.me_{$kind}_mb_id = '$member[mb_id]'
order by a.me_id desc ";
*/
$sql = " select a.*, b.mb_id, b.mb_nick, b.mb_email, b.mb_homepage
from $g4[memo_table] a
left join $g4[member_table] b on (a.me_{$unkind}_mb_id = b.mb_id)
where a.me_{$kind}_mb_id = '$member[mb_id]'
order by a.me_id desc limit $from_record, $rows";

$result = sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
$list[$i] = $row;

$mb_id = $row["me_{$unkind}_mb_id"];

if ($row[mb_nick])
$mb_nick = $row[mb_nick];
else
$mb_nick = "<font color=silver>정보없음</font>";

$name = get_sideview($row[mb_id], $row[mb_nick], $row[mb_email], $row[mb_homepage]);

if (substr($row[me_read_datetime],0,1) == '0')
$read_datetime = '아직 읽지 않음';
else
$read_datetime = substr($row[me_read_datetime],2,14);

$send_datetime = substr($row[me_send_datetime],2,14);

$list[$i][name] = $name;
$list[$i][send_datetime] = $send_datetime;
$list[$i][read_datetime] = $read_datetime;
$list[$i][view_href] = "./memo_view.php?me_id=$row[me_id]&kind=$kind&page=$page";
$list[$i][del_href] = "./memo_delete.php?me_id=$row[me_id]&kind=$kind&page=$page";
}

$page = get_paging($config[cf_write_pages], $page, $total_page, "?kind=$kind&page=");
echo "<script language='javascript' src='$g4[path]/js/sideview.js'></script>";

$member_skin_path = "$g4[path]/skin/member/$config[cf_member_skin]";
include_once("$member_skin_path/memo.skin.php");

include_once("$g4[path]/tail.sub.php");
?>



스킨/memo.skin.pkp

<?=$page?><-추가
위의 방법 외에도 내용보기 / 삭제 / 리스트가기 등에서 페이지값을 유지하기 위해선 $page 변수를 가지고 가도록 전부 수정해야 합니다.
감사합니다. 헐랭이님...

order by a.me_id desc limit $from_record, $rows";

이부분만 수정하면 되는것을 SQL구문적용을 이렇게 달리하는 것을 몰랐네요

아무튼 정말 감사합니다.
2011-01-07 (금) 21:32:31
헐랭이님 설명대로 따라했더니 아주 잘됩니다 ㅠㅠ 엄청 찾아헤맸는데 답이 여기있었네요! 감사합니다 ㅠㅠ
댓글을 작성하시려면 로그인이 필요합니다.

그누4 질문답변

66,531건

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기 기존 게시물은 열람만 가능합니다.

+
제목 글쓴이 날짜 조회
07-04-09 조회 1,786
07-04-09 조회 1,603
07-04-09 조회 1,619
07-04-09 조회 1,753
07-04-09 조회 1,598
07-04-09 조회 2,061
07-04-09 조회 1,939
07-04-09 조회 1,605
07-04-09 조회 1,662
07-04-09 조회 1,601
07-04-09 조회 1,580
07-04-09 조회 1,859
07-04-09 조회 2,414
07-04-09 조회 1,707
07-04-09 조회 1,599
07-04-09 조회 1,798
07-04-09 조회 1,598
07-04-09 조회 1,591
07-04-08 조회 1,607
07-04-08 조회 1,697