이런 기능을 common.php에 해당 게시판 id($bo_table) 조건으로 추가하면 될 듯합니다.
https://sir.kr/qa/418047?sfl=mb_id%2C1&lstx=woolaf
------------------------------------
위 질문의 연장선입니다.
common.php 에 어떤 코드를 넣어야 하는지 구체적으로 설명을 들을 수 있을까요?
아니면 예를 들 만한 코드가 있을까요?
알려주시면 감사하겠습니다.
답변 2개 / 댓글 3개
채택된 답변
+20 포인트
마르스컴퍼니
2021-06-25 (금) 18:37:55
크론/웹크론을 안쓰고는 정기적인 타임으로 글쓰기는 불가합니다.
그누보드 내에서 처리하는 경우는..
해당 처리 코드를 어떤 페이지에 넣는다고 했을 때.. (가령, /extend/user.config.php)
해당 페이지가 로드되었을 때 처리되기 때문에..
24시간동안 매분마다 방문자가 있다면.. 5분마다/10분마다/.. 글등록이 될 수도 되겠지만.. 실제로 24시간동안 매분마다 방문이 있기는 어렵기 때문입니다.
답변에 대한 댓글 2개
2021-06-26 (토) 03:19:50
마르스컴퍼니
2021-06-29 (화) 13:57:28
/extend/user.config.php
매 페이지 로딩이 일어날 때.. 현재시각이 5분 단위인지 체크하여 실행되는 코드입니다.
[code]
$m = date('i');
if ((int)$m % 5 == 0) { // 현재 시각이 ~시 5분, 10분, 15분, .. 이라면..
$bo_table = 'aaa';
$write_table = $g5['write_prefix'] . $bo_table;
$wr_num = get_next_num($write_table);
$wr_option = 'html1';
$wr_subject = "제목";
$wr_content = "내용";
$mb_id = "id";
$wr_name = "작성자";
$wr_datetime = G5_TIME_YMDHIS;
$wr_last = G5_TIME_YMDHIS;
$sql = "
insert into {$write_table}
set wr_num = '{$wr_num}',
wr_reply = '',
ca_name = '',
wr_option = '{$wr_option}',
wr_subject = '{$wr_subject}',
wr_content = '{$wr_content}',
wr_seo_title = '',
wr_link1 = '',
wr_link2 = '',
mb_id = '{$mb_id}',
wr_password = '',
wr_name = '{$wr_name}',
wr_email = '',
wr_homepage = '',
wr_datetime = '{$wr_datetime}',
wr_last = '{$wr_last}',
wr_ip = '{$wr_ip}',
wr_1 = '{$sub_id}'
";
sql_query($sql);
sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");
}
[/code]
매 페이지 로딩이 일어날 때.. 현재시각이 5분 단위인지 체크하여 실행되는 코드입니다.
[code]
$m = date('i');
if ((int)$m % 5 == 0) { // 현재 시각이 ~시 5분, 10분, 15분, .. 이라면..
$bo_table = 'aaa';
$write_table = $g5['write_prefix'] . $bo_table;
$wr_num = get_next_num($write_table);
$wr_option = 'html1';
$wr_subject = "제목";
$wr_content = "내용";
$mb_id = "id";
$wr_name = "작성자";
$wr_datetime = G5_TIME_YMDHIS;
$wr_last = G5_TIME_YMDHIS;
$sql = "
insert into {$write_table}
set wr_num = '{$wr_num}',
wr_reply = '',
ca_name = '',
wr_option = '{$wr_option}',
wr_subject = '{$wr_subject}',
wr_content = '{$wr_content}',
wr_seo_title = '',
wr_link1 = '',
wr_link2 = '',
mb_id = '{$mb_id}',
wr_password = '',
wr_name = '{$wr_name}',
wr_email = '',
wr_homepage = '',
wr_datetime = '{$wr_datetime}',
wr_last = '{$wr_last}',
wr_ip = '{$wr_ip}',
wr_1 = '{$sub_id}'
";
sql_query($sql);
sql_query("update {$g5['board_table']} set bo_count_write = bo_count_write + 1 where bo_table = '{$bo_table}'");
}
[/code]
2021-06-25 (금) 17:29:45
우선 정해진 시간에 서버내의 php 파일을 실행하여 글쓰기를 하고싶다면
크론잡 사이트를 쓰셔야합니다.
사용방법은 아래 첨부드리며,
http://gnuwiz.com/bbs/board.php?bo_table=reference&wr_id=48
수행할 코드는 /cron.php 파일로 생성하여
원하는 글쓰기 로직을 넣으시면 됩니다.
답변에 대한 댓글 1개
답변을 작성하려면 로그인이 필요합니다.
현재 제 사이트는 회원들이 시간당 100 명 정도 머물고 있습니다.
매분 까지는 아니여도 5~10분 오차로 유료광고글 계속 올라고 하고 싶습니다. 제가 생각한 하드코딩은 페이지 리로드 될때마다 php 실행이 발생하니 그걸 방지하고자 더 좋은 코드를 찾는 것입니다.