제작한 페이지 내 검색창 달기
본문
아직도 그누보드 4를 쓰고 있습니다.
그림과 같이 페이지 내 주문서 목록에서 일시, 품명, 신청자, 주문내용, 도정분도, 금액 등 위에 항목별로 검색할수 있는 검색창을 원하는 위치에 달고 싶습니다.
현재사용되는 주문서 소스코드입니다. 어디를 수정해야...
고수님들의 명쾌한 답변 주시면 합니다.
<?
$g4_path="..";
include_once($g4_path."/common.php");
include_once($g4[path]."/head.php");
include_once("_main.lib.php");
?>
<!-- 본문시작 -->
<style>
.sm { font-size:9pt; font-family:굴림체; }
</style>
<table cellpadding=0 cellspacing=0 border=0 width="94%" align=center><tr><td>
<?
if($member[mb_id]||$is_admin)
{
$bo_arr = get_group_board("sub02"); // 게시판 목록 추출
$list = array();
$subject_len = 40;
$rows = 100;
$tot = 0;
$cnt = 0;
?>
<br>
<div style="background-image:url('../skin/board/basic/img/title_bg.gif'); background-repeat:repeat-x; border-width:1px; border-color:rgb(208,208,208); border-style:solid; height:34px; clear:both;">
<table border=0 cellpadding=0 cellspacing=0 width=100%>
<tr>
<td style="padding:8px 0 0 10px;">
<div style="font-weight:bold; font-size:13px; color:rgb(80,80,80); word-break:break-all;">
주문내역서
</div>
</td>
<td align="right" style="padding:6px 6px 0 0;" width=120>
</td>
</tr>
</table>
</div>
<br>
<table width="100%" border="1" cellpadding="2" cellspacing="1" bordercolorlight="#009900F" bordercolordark="#0033cc" bgcolor="#73AFC5">
<tr height=22>
<td align=center bgcolor='#DAECF1' class="sm" width="20">순번</td>
<td align=center bgcolor='#DAECF1' class="sm" width="50">일시</td>
<td align=center bgcolor='#DAECF1' class="sm" width="50">품명</td>
<td align=center bgcolor='#DAECF1' class="sm" width="40">신청자</td>
<td align=center bgcolor='#DAECF1' class="sm" width="50">주문내용</td>
<td align=center bgcolor='#DAECF1' class="sm" width="30">도정분도</td>
<td align=center bgcolor='#DAECF1' class="sm" width="40">금액</td>
<td align=center bgcolor='#DAECF1' class="sm" width="50">배송희망일</td>
<td align=center bgcolor='#DAECF1' class="sm" width="">배송지주소</td>
<td align=center bgcolor='#DAECF1' class="sm" width="80">전화번호</td>
<td align=center bgcolor='#DAECF1' class="sm" width="40">수령자</td>
<td align=center bgcolor='#DAECF1' class="sm" width="40">주문상황</td>
</tr>
<?
// 해당 게시판 내의 본인 자료 추출
for($k=0; $k<count($bo_arr); $k++)
{
$bo_id = $bo_arr[$k][bo_table]; // 게시판아이디
$bo_subject = $bo_arr[$k][bo_subject]; // 게시판제목
$tmp_write_table = $g4[write_prefix] . $bo_id; // 게시판테이블명
$bo_config = get_config($bo_id);
$query = " select * from $tmp_write_table where (1) ";
if($is_admin)
$query .= " and wr_is_comment=0 ";
else
$query .= " and wr_is_comment=0 and mb_id='{$member[mb_id]}' ";
$query .= " order by wr_id desc "; // 날짜가 최근인것 순서대로
//$query .= " limit 0, $rows "; // 처음부터 n개 추출
$result = sql_query($query);
for ($i=0; $row=sql_fetch_array($result); $i++)
{
$wr_id = $row[wr_id];
$row = get_board_data($bo_id, $wr_id);
$list[$cnt] = get_list($row, $bo_config, $latest_path, $subject_len);
if($row[wr_datetime] >= date("Y-m-d H:i:s", time() - $new_hours * 3600)) // 3일
$list[$cnt][new_icon] = " <img src='img/new.gif' width=10 height=9 alt='새글' />";
else
$list[$cnt][new_icon]="";
$list[$cnt][datetime2] = substr($list[$cnt][wr_datetime],0,10);
$list[$cnt][bo_table] = $bo_id;
$list[$cnt][bo_subject] = $bo_subject;
$list[$cnt][cnt] = $cnt; // 게시판의 배열번호
$cnt ++;
}
}
// 열 목록 얻기
foreach ($list as $key => $row) {
$bo_table[$key] = $row['bo_table'];
$wr_id[$key] = $row['wr_id'];
$wr_datetime[$key] = $row['wr_datetime'];
}
// volume 내림차순, edition 오름차순으로 데이터를 정렬
// 공통 키를 정렬하기 위하여 $data를 마지막 인수로 추가
//array_multisort($wr_datetime, SORT_DESC, $bo_table, SORT_ASC, $list);
array_multisort($wr_datetime, SORT_DESC, SORT_STRING, $list);
//array_multisort($list[0], SORT_ASC, SORT_STRING, $ar[1], SORT_NUMERIC, SORT_DESC);
//var_dump($ar);
if($is_admin)
{
$total_count = $cnt; // 전체 레코드수
$recordPerPage = 30; // 페이지 당 뿌릴 레코드 수
$pagePerBlock = 10; // [1] ~ [10] 까지 한번에 10개씩
// 총페이지수 계산
$total_page = ceil($total_count / $recordPerPage); // 전체 페이지 계산
if (!$page) { $page = 1; } // 페이지가 없으면 첫 페이지 (1 페이지)
$from_record = ($page - 1) * $recordPerPage; // 시작 열을 구함
$to_record = $from_record + $recordPerPage - 1;
echo "<form action='$PHP_SELF'>";
echo "<select name='page' onchange='this.form.submit()'>";
for($i=1; $i<=$total_page; $i++)
{
echo "<option value='{$i}'";
if($i==$page) echo " selected";
echo ">".$i."</option>";
}
echo "</select> Page";
echo "</form>";
}
// 다시 반복하면서 출력
for($i=0; $i<count($list); $i++)
{
if($is_admin)
{
if($i < $from_record) continue;
if($to_record < $i) continue;
}
$wr1 = explode("|",$list[$i][wr_1]);
$wr2 = explode("|",$list[$i][wr_2]);
$wr3 = intval($list[$i][wr_3]);
$tot += $wr3;
$wr7 = explode("|",$list[$i][wr_7]);
$wr8 = explode("|",$list[$i][wr_8]);
$wr10 = explode("|",$list[$i][wr_10]);
$wrlink1 = explode("|",$list[$i][wr_link1]);
$date1 = substr($wrlink1[0],2,2)."-".substr($wrlink1[0],4,2)."-".substr($wrlink1[0],6,2);
if($list[$i][ca_name]) $subject = $list[$i][ca_name];
else $subject = $list[$i][bo_subject];
if($_SERVER[REMOTE_ADDR]=="124.136.196.3") {
//echo $list[$i][wr_datetime]."<br>";
}
$bo_id = $list[$i][bo_table]; // 게시판아이디
$bo_subject = $list[$i][bo_subject]; // 게시판제목
$bo_config = get_config($bo_id); // 게시판환경 로딩
$res=$res1=$res2="";
if($wr1[2] || $wr2[2]) // 2012년 11월 09일 이후 (제목도 같이 저장해서 출력)
{
if($wr1[0]&&$wr1[1]) $res1="<span title='1' class='sm'>".$wr1[2]."=".$wr1[0]."</span>";
if($wr2[0]&&$wr2[1]) $res2="<span title='2' class='sm'>".$wr2[2]."=".$wr2[0]."</span>";
}
else
{
if($bo_id=="sub02_03" && substr($list[$i][wr_datetime],0,10) <= "2012-11-06") // 10월30일까지는 강제출력
{
if($wr1[0]&&$wr1[1]) $res1="<span title='1' class='sm'>10kg=".$wr1[0]."</span>";
if($wr2[0]&&$wr2[1]) $res2="<span title='2' class='sm'>20kg=".$wr2[0]."</span>";
}
else // 게시판 환경설정에 따른 출력
{
if($wr1[0]&&$wr1[1]) $res1="<span title='1' class='sm'>".$bo_config[bo_1_subj]."=".$wr1[0]."</span>";
if($wr2[0]&&$wr2[1]) $res2="<span title='2' class='sm'>".$bo_config[bo_2_subj]."=".$wr2[0]."</span>";
}
}
if($res1) $res.=$res1."<br>";
if($res2)
{
//if($res) $res.=", ";
$res.=$res2."<br>";
}
//$res = " ".$bo_config[bo_1_subj]." ".$wr1[0]."개";
//if($bo_config[bo_2_subj]) $res.= ", ".$bo_config[bo_2_subj]." ".$wr2[0]."개";
// 2012년 12월12일 신규로 추가
$wr11 = explode("|",$list[$i][wr_11]);
if($wr11[0]&&$wr11[1]) $res3="<span class='sm'>".$wr11[2]."=".$wr11[0]."</span>";
else $res3="";
if($res3) $res.=$res3."<br>";
$wr12 = explode("|",$list[$i][wr_12]);
if($wr12[0]&&$wr12[1]) $res4="<span class='sm'>".$wr12[2]."=".$wr12[0]."</span>";
else $res4="";
if($res4) $res.=$res4."<br>";
$wr13 = explode("|",$list[$i][wr_13]);
if($wr13[0]&&$wr13[1]) $res5="<span class='sm'>".$wr13[2]."=".$wr13[0]."</span>";
else $res5="";
if($res5) $res.=$res5."<br>";
// 신규로 추가 끝
$wlink = "../bbs/board.php?bo_table=".$bo_id."&wr_id=".$list[$i][wr_id];
echo "<tr bgcolor=white height=22>";
echo "<td align=center class='sm'>".($i+1)."</td>"; // 순번
echo "<td><a href='$wlink' class='sm'>".substr($list[$i][wr_datetime],2,8)."<br>".substr($list[$i][wr_datetime],11,5)."</a></td>"; // 일시
echo "<td><a href='$wlink' class='sm'>".$subject."</a></td>"; // 품명
echo "<td><a href='$wlink' class='sm'>".$list[$i][wr_name]."</a></td>"; // 신청자
echo "<td class='sm'><span class='sm'>".$res."</span></td>"; // 주문내용
echo "<td class='sm' align=center>".$wr10[0]."</td>"; // 도정분도
echo "<td class='sm' align=right>".number_format($wr3)." </td>"; // 금액
echo "<td class='sm' align=center>".$date1."</td>"; // 배송희망일
echo "<td class='sm'>".$wr8[2]." ".$wr8[3]." (".$wr8[0]."-".$wr8[1].")</td>"; // 배송지주소
echo "<td class='sm' align=center>".$wr7[0]."</td>"; // 전화번호
echo "<td class='sm' align=center>".$list[$i][wr_6]."</td>"; // 수령자
echo "<td class='sm' align=center>".$list[$i][wr_link2]."</td>"; // 주문상황
echo "</tr>";
}
// 게시물 추출끝
//echo $cnt."<br>";
// ca_name : 판매품목
// wr_1 : 첫번째물품 구매수량+금액
// wr_2 : 두번째물품 구매수량+금액
// wr_3 : 총합계금액
// wr_name : 주문자 이름
// wr_4 : 주문자 연락처(핸드폰,전화)
// wr_5 : 주문자 주소
// wr_email : 주문자 이메일
// wr_6 : 수령자 이름
// wr_7 : 수령자 연락처(핸드폰,전화)
// wr_8 : 수령자 주소
// wr_9 : 수령자 이메일
// wr_10: 도정분도, 입금자명
// wr_link1 : 배송희망일, 입금예정일
// wr_link2 : 주문상황(입금대기,입금확인,배송중,배송완료)
$cols=12;
?>
<tr>
<td colspan=<?=$cols?> align=right bgcolor=#DAECF1 height=29>총 <?=$cnt?> 건 <!--<?=number_format($tot)?>원--> </td>
</tr>
</table>
<?
} // 회원인 경우에만 실행
else
{
echo "<script> alert('회원만 이용하실 수 있습니다'); history.back(); </script>";
}
?>
</td></tr></table>
<!-- 본문 끝 -->
<?
include_once($g4[path]."/tail.php");
// 페이징
function handlePage($totalRecord,$recordPerPage,$pagePerBlock,$currentPage){ // 전체레코드, 페이지당 레코드수(10) , 블럭당페이지수(10), 현재페이지
$totalNumOfPage = ceil($totalRecord/$recordPerPage); //16page
$totalNumOfBlock = ceil($totalNumOfPage/$pagePerBlock); //2block
$currentBlock = ceil($currentPage/$pagePerBlock); // 1page
$startPage = ($currentBlock-1)*$pagePerBlock+1; // 1page
$endPage = $startPage+$pagePerBlock -1; // 10page
if($endPage > $totalNumOfPage) $endPage = $totalNumOfPage;
//NEXT,PREV 존재 여부
$isNext = false;
$isPrev = false;
if($currentBlock < $totalNumOfBlock) $isNext = true;
if($currentBlock > 1) $isPrev = true;
if($totalNumOfBlock == 1){
$isNext = false;
$isPrev = false;
}
if($isPrev){
$goPrevPage = $startPage-$pagePerBlock; // 11page
echo "<a href=\"$PHP_SELF?page=$goPrevPage\">[PREV]</a>";
}
for($i=$startPage;$i<=$endPage;$i++){
echo "<a href=\"$PHP_SELF?page=$i\">[".$i."]</a>";
}
if($isNext){
$goNextPage = $startPage+$pagePerBlock; // 11page
echo "<a href=\"$PHP_SELF?page=$goNextPage\">[NEXT]</a>";
}
}
?>