테스트 사이트 - 개발 중인 베타 버전입니다

이소스를 g4s 용으로 바꾸면..

· 12년 전 · 338 · 2
[code]
<?
/*
ziumsoft 2013. 05
*/
include_once("./_common.php");
//-- $latest_skin_path, $table_name, $reloadtime(초), $firstload 1:첫 실행, 0:첫 실행 아님, $boardlist:적용한 보드 목록
$my_new_reply_list = ""; //-- 반응글 정보
$new_reply_alimi = 0;
$code_id = md5($member[mb_id]);

$boardlist = preg_replace("/\s+/", "", base64_decode($boardlist));
$aboardlist = explode(",", $boardlist);
for($i = 0; $i < count($aboardlist); $i++) $aboardname[$i] = "g4s_write_".$aboardlist[$i];

//-- 아이디로 검색 된 레코드가 없으면 아이디가 포함 된 빈 레코드 추가
if($firstload) {
$rdFirst = sql_fetch("select wr_id from $table_name where wr_subject='$code_id'");
if(!$rdFirst[wr_id] && $member[mb_id]) {
sql_query("insert into $table_name set wr_subject='$code_id'");
}
}

//-- 마지막 확인 후 지정한 시간이 지났음?
$pretime = date("Y-m-d H:i:s", time()-$reloadtime+10);
$rdAlimi = sql_fetch("select wr_id, wr_1, wr_content from $table_name where wr_subject='$code_id' and (wr_1<'$pretime' or wr_1='')");
$rdAlimi[wr_content] = base64_decode($rdAlimi[wr_content]);

if($rdAlimi[wr_id]) { //-- 첫 호출이거나 마지막 확인 후 지정한 시간 지났음
for($i = 0; $i < count($aboardlist); $i++) {
$repRes = sql_query("select wr_id, wr_num, wr_name, wr_reply, wr_parent, wr_datetime, wr_is_comment, wr_comment, wr_comment_reply, mb_id, wr_subject from $aboardname[$i] where wr_datetime>'$rdAlimi[wr_1]' and mb_id<>'$member[mb_id]' order by wr_num asc");
while($repData = mysql_fetch_array($repRes)) {
if(!((!$repData[wr_is_comment]) && ($repData[wr_id] == $repData[wr_parent]) && (!$repData[wr_reply]))){
if($repData[wr_reply]) {
$upRecA = substr($repData[wr_reply], 0, strlen($repData[wr_reply])-1);
$recRes = sql_fetch("select wr_id, mb_id, wr_name, wr_subject, wr_datetime from $aboardname[$i] where wr_num='$repData[wr_num]' and wr_is_comment='0' and wr_reply='$upRecA' and mb_id='$member[mb_id]'");
if($recRes[wr_id]) $my_new_reply_list .= $repData[wr_datetime] . "[#!!#]" . str_replace("g4s_write_", "", $aboardname[$i]) . "[#!!#]".$repData[wr_id] . "[#!!#]".$repData[wr_name] . "[#!!#]" . cut_str($recRes[wr_subject], 60) . "[#!!#]답글[#@@#]";
}

if(($repData[wr_is_comment] == "1") && ($repData[wr_comment_reply])) {
$upRecA = substr($repData[wr_comment_reply], 0, strlen($repData[wr_comment_reply])-1);
$recRes = sql_fetch("select wr_id, mb_id, wr_content from $aboardname[$i] where wr_num='$repData[wr_num]' and wr_comment='$repData[wr_comment]' and wr_comment_reply='$upRecA' and mb_id='$member[mb_id]'");
if($recRes[wr_id]) $my_new_reply_list .= $repData[wr_datetime] . "[#!!#]" . str_replace("g4s_write_", "", $aboardname[$i]) . "[#!!#]".$recRes[wr_id] . "#c_".$repData[wr_id] . "[#!!#]".$repData[wr_name] . "[#!!#]" . cut_str($recRes[wr_content], 60) . "[#!!#]답댓글[#@@#]";
}

if(($repData[wr_is_comment] == "1") && (!$repData[wr_comment_reply])) {
$recRes = sql_fetch("select wr_id, mb_id, wr_subject from $aboardname[$i] where wr_num='$repData[wr_num]' and wr_id='$repData[wr_parent]' and mb_id='$member[mb_id]'");
if($recRes[wr_id]) $my_new_reply_list .= $repData[wr_datetime] . "[#!!#]" . str_replace("g4s_write_", "", $aboardname[$i]) . "[#!!#]" . $recRes[wr_id] . "#c_" . $repData[wr_id] . "[#!!#]" . $repData[wr_name] . "[#!!#]" . cut_str($recRes[wr_subject], 60) . "[#!!#]댓글[#@@#]";
}
}
}
}
}
if($my_new_reply_list) { //-- 새 반응 글 있음
$new_reply_alimi = 1;

$my_new_reply_list .= $rdAlimi[wr_content];
if($code == "0") echo "<script language='javascript'>$('#zs_alimi_icon').css('display', 'block');</script>";
}else{ //-- 새 반응 글 없음
if($firstload) {
$rdAlimi = sql_fetch("select wr_id, wr_1, wr_content from $table_name where wr_subject='$code_id'");
$rdAlimi[wr_content] = base64_decode($rdAlimi[wr_content]);
$my_new_reply_list = $rdAlimi[wr_content];
}
}

$a_new_reply_list = explode("[#@@#]", $my_new_reply_list);
$a_new_reply_list = array_unique($a_new_reply_list); //-- 배열 중복 값 정리
rsort($a_new_reply_list); //-- 역순 정렬
$overcnt = count($a_new_reply_list) - 10;
if($overcnt > 0) for($j = 0; $j < $overcnt; $j++) array_pop($a_new_reply_list);

if($new_reply_alimi || $firstload) {
$reply_info_list = array();
for($i = 0; $i < count($a_new_reply_list); $i++) {
if($a_new_reply_list[$i]) {
$temp_reply = explode("[#!!#]", $a_new_reply_list[$i]);
$reply_info_list[$i][0] = $temp_reply[1]; //-- 게시판 이름
$reply_info_list[$i][1] = $temp_reply[2]; //-- 글번호
$reply_info_list[$i][2] = $temp_reply[3]; //-- 글쓴이
$reply_info_list[$i][3] = $temp_reply[4]; //-- 제목
$reply_info_list[$i][4] = $temp_reply[5]; //-- 답댓글
$reply_info_list[$i][5] = $temp_reply[0]; //-- 날짜
$reply_info_list[$i][6] = "<a id=reply_href href='../../../bbs/board.php?bo_table=".$temp_reply[1]."&wr_id=".$temp_reply[2]."' target='_blank'>"; //-- 게시판 링크
}
}

include_once("new.reply.skin.php"); //-- 알리미 스킨

//-- 마지막 확인 시간 수정.
$nowtime = date("Y-m-d H:i:s");
$my_new_reply_list = base64_encode($my_new_reply_list);
if($code == "1")
$reNewReply = sql_query("update $table_name set wr_1='$nowtime', wr_content='$my_new_reply_list' where wr_subject='$code_id'");
} else {
echo "new_reply_none"; //-- 새 반응 글 없음
}
?>
[/code]

g4용 아고라 댓글 알림이인데요...
g4s에서 쓸라하니

select wr_id, wr_num, wr_name, wr_reply, wr_parent, wr_datetime, wr_is_comment, wr_comment, wr_comment_reply, mb_id, wr_subject from g4s_write_ where wr_datetime>'' and mb_id<>'admin' order by wr_num asc

1146 : Table 'test.g4s_write_' doesn't exist

error file : /skin/latest/zm.alimi/new.reply.load.php

이렇게 뜨는군요...

상단에 올린 코드가 new.reply.load.php 내용입니다...
왜이러는걸까요..기존 소스에서 제가 g4_ 를 g4s_ 로 바꾸긴했는데
너무어렵네요 g4s ㅜㅜ

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

댓글 2개

12년 전
MySQL에서 테이블을 만들면 어떨까요.
g4s_write_ 이 부분 앞에 test. 이 부분이 있어서 안되는 듯 하네요
$table_name 이 네임에 test가 적용되있는데, 올려주신 코드에서는 정의된 부분이 없네요.
아마도 config나 다른부분에서 있을텐데 해당내용만으로 드릴수있는 답변은 말그대로

1146 : Table 'test.g4s_write_' doesn't exist

이답변밖에 없네요... g4와 g4s의 db구조자체도 틀리고 사용하신 스킨에서 또다른 디비를 다루게된다면
조금 힘드실수있습니다...

게시글 목록

번호 제목
4184
4181
4180
4169
4155
4154
4153
4148
4147
4140
4133
4126
4125
4124
4123
4121
4120
4116
4108
4106