게시판 글 엑셀 엑셀 업데이트 시 게시판수 카운터 조정
본문
게시판에
영카트에서 사용한 상품올리기 가져다가
수정 해서 진행 했는데요 잘 올라 가는데요
게시판 글 전체 카운터는 변동이 안되더라구요
조언 부탁드립니다.
게시판 관리 > 게시판 카운터 조정을 해야되는되요
자동으로 올릴대 처리 할 수 있는 방법은 없는지요?
아래는 소스입니다.
<?php
include_once('./_common.php');
// 상품이 많을 경우 대비 설정변경
set_time_limit ( 0 );
ini_set('memory_limit', '128M');
function only_number($n)
{
return preg_replace('/[^0-9]/', '', $n);
}
if($_FILES['excelfile']['tmp_name']) {
$file = $_FILES['excelfile']['tmp_name'];
include_once(G5_LIB_PATH.'/Excel/reader.php');
$data = new Spreadsheet_Excel_Reader();
// Set output Encoding.
$data->setOutputEncoding('UTF-8');
/***
* if you want you can change 'iconv' to mb_convert_encoding:
* $data->setUTFEncoder('mb');
*
**/
/***
* By default rows & cols indeces start with 1
* For change initial index use:
* $data->setRowColOffset(0);
*
**/
/***
* Some function for formatting output.
* $data->setDefaultFormat('%.2f');
* setDefaultFormat - set format for columns with unknown formatting
*
* $data->setColumnFormat(4, '%.3f');
* setColumnFormat - set format for column (apply only to number fields)
*
**/
$data->read($file);
/*
$data->sheets[0]['numRows'] - count rows
$data->sheets[0]['numCols'] - count columns
$data->sheets[0]['cells'][$i][$j] - data from $i-row $j-column
$data->sheets[0]['cellsInfo'][$i][$j] - extended info about cell
$data->sheets[0]['cellsInfo'][$i][$j]['type'] = "date" | "number" | "unknown"
if 'type' == "unknown" - use 'raw' value, because cell contain value with format '0.00';
$data->sheets[0]['cellsInfo'][$i][$j]['raw'] = value if cell without format
$data->sheets[0]['cellsInfo'][$i][$j]['colspan']
$data->sheets[0]['cellsInfo'][$i][$j]['rowspan']
*/
error_reporting(E_ALL ^ E_NOTICE);
$dup_it_id = array();
$fail_it_id = array();
$dup_count = 0;
$total_count = 0;
$fail_count = 0;
$succ_count = 0;
for ($i = 2; $i <= $data->sheets[0]['numRows']; $i++) {
$total_count++;
$j = 1;
$wr_name = addslashes($data->sheets[0]['cells'][$i][$j++]);
$wr_3 = addslashes($data->sheets[0]['cells'][$i][$j++]);
$wr_2 = addslashes($data->sheets[0]['cells'][$i][$j++]);
$wr_22 = strip_tags(trim($wr_2));
$wrry_id = explode('-',$wr_22);
$mb_id = $wrry_id[0].$wrry_id[1].$wrry_id[2];
if( !$wr_2 || !$wr_name) {
$fail_count++;
continue;
}
// it_id 중복체크
$sql2 = " select count(*) as cnt from {$g5['g5_write_insubasefree']} where mb_id = '$mb_id' ";
$row2 = sql_fetch($sql2);
if($row2['cnt']) {
$fail_it_id[] = $mb_id;
$dup_it_id[] = $mb_id;
$dup_count++;
$fail_count++;
continue;
}
$write_table = 'g5_write_insubasefree';
$wr_subject = '무료실비보상신청합니다.';
$wr_num = get_next_num($write_table);
$wr_reply = '';
$wr_1 = '무료실비보상상품';
$sql = " insert into $write_table
set wr_num = '$wr_num',
wr_reply = '$wr_reply',
wr_comment = 0,
ca_name = '$ca_name',
wr_option = '$html,$secret,$mail',
wr_subject = '$wr_subject',
wr_content = '$wr_content',
wr_link1 = '$wr_link1',
wr_link2 = '$wr_link2',
wr_link1_hit = 0,
wr_link2_hit = 0,
wr_hit = 0,
wr_good = 0,
wr_nogood = 0,
mb_id = '$mb_id',
wr_password = '$wr_password',
wr_name = '$wr_name',
wr_email = '$wr_email',
wr_homepage = '$wr_homepage',
wr_datetime = '".G5_TIME_YMDHIS."',
wr_last = '".G5_TIME_YMDHIS."',
wr_ip = '{$_SERVER['REMOTE_ADDR']}',
wr_1 = '$wr_1',
wr_2 = '$wr_2',
wr_3 = '$wr_3',
wr_4 = '$wr_4',
wr_5 = '$wr_5',
wr_6 = '$wr_6',
wr_7 = '$wr_7',
wr_8 = '$wr_8',
wr_9 = '$wr_9',
wr_10 = '{$member['mb_id']}',
wr_11 = '$wr_11',
wr_12 = '$wr_12',
wr_13 = '$wr_13',
wr_14 = '$wr_14' ";
sql_query($sql);
$wr_id = mysql_insert_id();
$insuno = date(ymd).'-03-'.$wr_id;
// 보험번호 생성 UPDATE
sql_query(" update $write_table set wr_15 = '$insuno' where wr_id = '$wr_id' ");
// 부모 아이디에 UPDATE
sql_query(" update $write_table set wr_parent = '$wr_id' where wr_id = '$wr_id' ");
// 새글 INSERT
sql_query(" insert into {$g5['board_new_table']} ( bo_table, wr_id, wr_parent, bn_datetime, mb_id ) values ( '{$bo_table}', '{$wr_id}', '{$wr_id}', '".G5_TIME_YMDHIS."', '{$member['mb_id']}' ) ");
// 게시글 1 증가
sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");
// // 회원 등록
// $mb_password = '0000';
// $mb_level = '2';
// $member_table = 'g5_member';
// $mb_datetime = '".G5_TIME_YMDHIS."';
// $sql = " INSERT INTO {$member_table}
// SET mb_id = '$wr_id2',
// mb_password = '".sql_password($mb_password)."',
// mb_name = '$wr_name',
// mb_nick = '$wr_name',
// mb_nick_date = '$mb_nick_date',
// mb_email = '$wr_email',
// mb_homepage = '$mb_homepage',
// mb_level = '$mb_level',
// mb_sex = '$mb_sex',
// mb_birth = '$mb_birth',
// mb_tel = '$mb_tel',
// mb_hp = '$wr_2',
// mb_certify = '$mb_certify',
// mb_adult = '$mb_adult',
// mb_dupinfo = '$mb_dupinfo',
// mb_zip1 = '$mb_zip1',
// mb_zip2 = '$mb_zip2',
// mb_addr1 = '$mb_addr1',
// mb_addr2 = '$mb_addr2',
// mb_addr3 = '$mb_addr3',
// mb_addr_jibeon = '$mb_addr_jibeon',
// mb_signature = '$mb_signature',
// mb_recommend = '$mb_recommend',
// mb_point = '$mb_point',
// mb_today_login = '$mb_today_login',
// mb_login_ip = '$mb_login_ip',
// mb_datetime = '".G5_TIME_YMDHIS."',
// mb_ip = '{$_SERVER['REMOTE_ADDR']}',
// mb_leave_date = '$mb_leave_date',
// mb_intercept_date = '$mb_intercept_date',
// mb_email_certify = '$mb_email_certify',
// mb_memo = '$mb_memo',
// mb_lost_certify = '$mb_lost_certify',
// mb_mailling = '$mb_mailling',
// mb_sms = '$mb_sms',
// mb_open = '$mb_open',
// mb_open_date = '$mb_open_date',
// mb_profile = '$mb_profile',
// mb_memo_call = '$mb_memo_call',
// mb_1 = '$mb_1',
// mb_2 = '$mb_2',
// mb_3 = '$mb_3',
// mb_4 = '$mb_4',
// mb_5 = '$mb_5',
// mb_6 = '$mb_6',
// mb_7 = '$mb_7',
// mb_8 = '$mb_8',
// mb_9 = '$mb_9',
// mb_10 = '$mb_10' ";
// sql_query($sql);
// // 정산된 포인트 넣기
// if ($mb_point > 0) {
// //$expire = preg_replace('/[^0-9]/', '', 365);
// $expire = '';
// insert_point($mb_id, $mb_point, '정산된 포인트', '@passive', $mb_id, '리뉴얼', $expire);
// }
$succ_count++;
}
}
$g5['title'] = '무료보험 엑셀일괄등록 결과';
include_once('./admin.head.php');
?>
<div class="new_win">
<h1><?php echo $g5['title']; ?></h1>
<div class="local_desc01 local_desc">
<p>무료보험등록을 완료했습니다.</p>
</div>
<dl id="excelfile_result">
<dt>총무료보험수</dt>
<dd><?php echo number_format($total_count); ?></dd>
<dt>완료건수</dt>
<dd><?php echo number_format($succ_count); ?></dd>
<dt>실패건수</dt>
<dd><?php echo number_format($fail_count); ?></dd>
<?php if($fail_count > 0) { ?>
<dt>실패무료보험아이디</dt>
<dd><?php echo implode(', ', $fail_it_id); ?></dd>
<?php } ?>
<?php if($dup_count > 0) { ?>
<dt>중복무료보험아이디</dt>
<dd><?php echo implode(', ', $dup_it_id); ?></dd>
<?php } ?>
</dl>
<!-- <div class="btn_win01 btn_win">
<button type="button" onclick="window.close();">창닫기</button>
</div> -->
</div>
<?php
include_once('./admin.tail.php');
?>
!-->
답변 1
"// 게시글 1 증가" 부분의 쿼리 내용을
"// 보험번호 생성 UPDATE" 부분의 쿼리 내용 이전으로 옮겨보세요.
만약 그래도 안 된다면, 아래와 같이 "// // 회원 등록" 주석글 이전에
아래의 코드를 추가해보세요.
$row = sql_fetch(" select count(*) as cnt from {$write_table} where wr_is_comment = 0 ");
sql_query(" update {$g5['board_table']} set bo_count_write = '{$row['cnt']}' where bo_table = '{$bo_table}' ");
// // 회원 등록
답변을 작성하시기 전에 로그인 해주세요.