랜덤 광고 뿌려주기(게시판+최근게시물) 정보
게시판 랜덤 광고 뿌려주기(게시판+최근게시물)첨부파일
본문
안녕하세요..^^
처음으로 스킨(?)이라는 것을 올려봅니다.
제가 이번에 만든 것은 랜덤 광고입니다.
사이트에 광고를 하고 싶을 때 그누보드를 이용하여 간단하게 광고를 할 수 있도록 만들었습니다.
디자인은 네이버 뉴스에서 뉴스 하단 (덧글 위) 에 사용중인 것을 그대로 가져온 것입니다.
(이런것도 저작권이 있지는 않겠죠? ^^;;)
사용예 : http://www.yeppmania.com/gboard4/bbs/tb.php/notice/99
여기서 게시물 하단 AD 부분입니다.
<특징 및 여유필드 사용처>
wr_subject : 광고명
wr_content : 광고에 대한 간단 설명(첫번째 줄만 광고에 노출됨)
wr_1 : 광고를 몇일까지 노출할 것인지 설정
wr_2 : 링크 타겟 설정 (동일사이트,외부사이트)
wr_3 : 노출 타겟 설정 (비회원+회원,회원만)
wr_link1 : 광고를 클릭했을 때 이동할 주소. 해당 광고를 몇번 클릭했는지 확인이 가능합니다.
<설치방법>
extend 폴더 안에 developer.lib.php 파일을 열어 아래의 소스를 맨 아래 ?> 위에 붙여 넣으세요.
=========================== developer.lib.php ==========================
//랜덤 게시물 추출하기
function r_latest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $mem)
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$today = $g4[time_ymd];
if(!$mem) $mem="1";
else $mem="0";
$tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
$sql = " select * from $tmp_write_table where wr_is_comment='0' and wr_1>='$today' and wr_3 >= '$mem' order by rand() desc limit 0, $rows ";
//explain($sql);
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++)
$list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
ob_start();
include "$latest_skin_path/latest.skin.php";
$content = ob_get_contents();
ob_end_clean();
return $content;
}
=================================================================
(위의 소스는 까만도둑님의 http://www.sir.co.kr/bbs/tb.php/g4_tiptech/27 소스를 약간 변경한 것입니다.)
그런 후에 첨부파일을 다운로드 받으시고 압축을 푸세요.
ad_board 폴더는 skin/board 안에 업로드 하시고,
ad_latest 폴더는 skin/latest 안에 업로드 하세요.
ad.php 파일은 그누보드 폴더에 넣어주세요. (config.php 파일이 보이는 곳)
관리자모드에서 광고 게시판을 하나 만드신 다음 스킨을 ad_board로 설정하세요.
이제 해당 게시판에서 글쓰기를 하여 광고를 등록합니다.
광고를 등록하셨다면,
광고를 보여주고 싶은 곳에다가,
<iframe name="ad" id="ad" frameborder='0' width=380 height=36 frameborder=0 scrolling=no src="../ad.php" marginheight=0 marginwidth=0 align=center></iframe>
이렇게 불러오세요..^^
위의 소스는 게시판 스킨 안의 view.skin.php 파일의 본문 아래에 넣었기 때문에 ad.php 경로가 저렇습니다.
다른 곳에 넣고자 하시면 경로를 바꿔주세요..^^;
※ 아참, 빼먹은 것이 있는데요..광고를 무기한 보여주고 싶으시다면 마감시한에 xxxx-xx-xx 로 입력하세요..ㅎㅎ
이 스킨은 그누보드 basic 스킨을 변형하였습니다.
처음으로 스킨(?)이라는 것을 올려봅니다.
제가 이번에 만든 것은 랜덤 광고입니다.
사이트에 광고를 하고 싶을 때 그누보드를 이용하여 간단하게 광고를 할 수 있도록 만들었습니다.
디자인은 네이버 뉴스에서 뉴스 하단 (덧글 위) 에 사용중인 것을 그대로 가져온 것입니다.
(이런것도 저작권이 있지는 않겠죠? ^^;;)
사용예 : http://www.yeppmania.com/gboard4/bbs/tb.php/notice/99
여기서 게시물 하단 AD 부분입니다.
<특징 및 여유필드 사용처>
wr_subject : 광고명
wr_content : 광고에 대한 간단 설명(첫번째 줄만 광고에 노출됨)
wr_1 : 광고를 몇일까지 노출할 것인지 설정
wr_2 : 링크 타겟 설정 (동일사이트,외부사이트)
wr_3 : 노출 타겟 설정 (비회원+회원,회원만)
wr_link1 : 광고를 클릭했을 때 이동할 주소. 해당 광고를 몇번 클릭했는지 확인이 가능합니다.
<설치방법>
extend 폴더 안에 developer.lib.php 파일을 열어 아래의 소스를 맨 아래 ?> 위에 붙여 넣으세요.
=========================== developer.lib.php ==========================
//랜덤 게시물 추출하기
function r_latest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $mem)
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$today = $g4[time_ymd];
if(!$mem) $mem="1";
else $mem="0";
$tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
$sql = " select * from $tmp_write_table where wr_is_comment='0' and wr_1>='$today' and wr_3 >= '$mem' order by rand() desc limit 0, $rows ";
//explain($sql);
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++)
$list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
ob_start();
include "$latest_skin_path/latest.skin.php";
$content = ob_get_contents();
ob_end_clean();
return $content;
}
=================================================================
(위의 소스는 까만도둑님의 http://www.sir.co.kr/bbs/tb.php/g4_tiptech/27 소스를 약간 변경한 것입니다.)
그런 후에 첨부파일을 다운로드 받으시고 압축을 푸세요.
ad_board 폴더는 skin/board 안에 업로드 하시고,
ad_latest 폴더는 skin/latest 안에 업로드 하세요.
ad.php 파일은 그누보드 폴더에 넣어주세요. (config.php 파일이 보이는 곳)
관리자모드에서 광고 게시판을 하나 만드신 다음 스킨을 ad_board로 설정하세요.
이제 해당 게시판에서 글쓰기를 하여 광고를 등록합니다.
광고를 등록하셨다면,
광고를 보여주고 싶은 곳에다가,
<iframe name="ad" id="ad" frameborder='0' width=380 height=36 frameborder=0 scrolling=no src="../ad.php" marginheight=0 marginwidth=0 align=center></iframe>
이렇게 불러오세요..^^
위의 소스는 게시판 스킨 안의 view.skin.php 파일의 본문 아래에 넣었기 때문에 ad.php 경로가 저렇습니다.
다른 곳에 넣고자 하시면 경로를 바꿔주세요..^^;
※ 아참, 빼먹은 것이 있는데요..광고를 무기한 보여주고 싶으시다면 마감시한에 xxxx-xx-xx 로 입력하세요..ㅎㅎ
이 스킨은 그누보드 basic 스킨을 변형하였습니다.
추천
1
1
댓글 전체

아주 좋은 팁입니다.
수고하여 만든 팁, 올려주셔서 진심으로 감사드립니다.
수고하여 만든 팁, 올려주셔서 진심으로 감사드립니다.
감사합니다..^^

아주 좋아요!!
감사합니다~~

상당히 유용할듯한 팁이네요.
시간나는대로 접목시켜 보도록 하겠습니다.
시간나는대로 접목시켜 보도록 하겠습니다.

접목시켜 보았습니다.
http://code36.com/cart4/bbs/board.php?bo_table=notice&wr_id=41
굿 이네요. iframe을 안쓰고 include문을 썼는데 잘 되는군요.
http://code36.com/cart4/bbs/board.php?bo_table=notice&wr_id=41
굿 이네요. iframe을 안쓰고 include문을 썼는데 잘 되는군요.
사용하여 주셔서 감사합니다~^^ include를 해도 잘 됩니다.
그런데 링크를 타고 갔다가 다시 돌아왔을 때 똑같은 광고가 또 보여지기 때문에 전 iframe을 쓴 것이었습니다.
그런데 링크를 타고 갔다가 다시 돌아왔을 때 똑같은 광고가 또 보여지기 때문에 전 iframe을 쓴 것이었습니다.
궁금한게 하나 있습니다. 위 소스에서 아래 변수에 관해서 궁금한게 있습니다
if(!$mem) $mem="1";
else $mem="0";
위 $mem 의 변수는 어디에서 온건가요? 그리고 용도를 좀 알려주세요.
if(!$mem) $mem="1";
else $mem="0";
위 $mem 의 변수는 어디에서 온건가요? 그리고 용도를 좀 알려주세요.
아..$mem은 로그인한 회원인지 아닌지를 체크하는 부분입니다.
<?=r_latest("ad_latest", 게시판명, 1, 40, "$member[mb_id]");?>
이것처럼 $member[mb_id] 가 있는지 없는지를 판단하여 회원이 아닐경우 회원만 보여줄 광고를 노출하지 않게 되어있습니다..^^
<?=r_latest("ad_latest", 게시판명, 1, 40, "$member[mb_id]");?>
이것처럼 $member[mb_id] 가 있는지 없는지를 판단하여 회원이 아닐경우 회원만 보여줄 광고를 노출하지 않게 되어있습니다..^^
extend 폴더 안에 developer.lib.php 파일이 저는 없는데요
http://www.sir.co.kr/bbs/tb.php/g4_tiptech/27 에는 소스가 없어요
developer.lib.php 파일도 올려 주시면 더욱 고맙겠습니다.
http://www.sir.co.kr/bbs/tb.php/g4_tiptech/27 에는 소스가 없어요
developer.lib.php 파일도 올려 주시면 더욱 고맙겠습니다.
메모장에다가요
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
//랜덤 게시물 추출하기
function r_latest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $mem)
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$today = $g4[time_ymd];
if(!$mem) $mem="1";
else $mem="0";
$tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
$sql = " select * from $tmp_write_table where wr_is_comment='0' and wr_1>='$today' and wr_3 >= '$mem' order by rand() desc limit 0, $rows ";
//explain($sql);
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++)
$list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
ob_start();
include "$latest_skin_path/latest.skin.php";
$content = ob_get_contents();
ob_end_clean();
return $content;
}
?>
이렇게 입력하시고 developer.lib.php 로 저장하신 다음에 업로드 하시면 되요^^
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
//랜덤 게시물 추출하기
function r_latest($skin_dir="", $bo_table, $rows=10, $subject_len=40, $mem)
{
global $g4;
if ($skin_dir)
$latest_skin_path = "$g4[path]/skin/latest/$skin_dir";
else
$latest_skin_path = "$g4[path]/skin/latest/basic";
$list = array();
$sql = " select * from $g4[board_table] where bo_table = '$bo_table'";
$board = sql_fetch($sql);
$today = $g4[time_ymd];
if(!$mem) $mem="1";
else $mem="0";
$tmp_write_table = $g4['write_prefix'] . $bo_table; // 게시판 테이블 전체이름
$sql = " select * from $tmp_write_table where wr_is_comment='0' and wr_1>='$today' and wr_3 >= '$mem' order by rand() desc limit 0, $rows ";
//explain($sql);
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++)
$list[$i] = get_list($row, $board, $latest_skin_path, $subject_len);
ob_start();
include "$latest_skin_path/latest.skin.php";
$content = ob_get_contents();
ob_end_clean();
return $content;
}
?>
이렇게 입력하시고 developer.lib.php 로 저장하신 다음에 업로드 하시면 되요^^
와우~멋져요~^^
감사합니다~^^ 잘 쓰세요~
우아아 고맙습니다 ㅎㅎㅎ ㄳㄳ
감사합니다~^^
오 색다른데요~
감사합니다
잘사용하겠습니다
감사합니다
잘사용하겠습니다
감사합니다^^ 잘 쓰세요~
오 신기하네요 한번 써봐야겠네요^6
감사합니다.
감사합니다.
NGIN님의 정성이 깃든 스킨이라고 생각됩니다...
유명 포탈사이트에서 본듯한 기능을 그누에서도 구현할수 있다니... 이런 감격이... ^0^
정말 수고하셨구여.. 감사합니다.
유명 포탈사이트에서 본듯한 기능을 그누에서도 구현할수 있다니... 이런 감격이... ^0^
정말 수고하셨구여.. 감사합니다.

죽음임다...
Warning: main(./extend/developer.lib.php): failed to open stream: No such file or directory in /web/home/rlaquddlf/html/PINK/ad.php on line 6
Warning: main(): Failed opening './extend/developer.lib.php' for inclusion (include_path='.:/usr/lib/php/pear') in /web/home/rlaquddlf/html/PINK/ad.php on line 6
이렇게 뜹니다..ㅜ.ㅜ.. 사용 할수 잇게 도와 주셔요..ㅜ.ㅜ.....
Warning: main(): Failed opening './extend/developer.lib.php' for inclusion (include_path='.:/usr/lib/php/pear') in /web/home/rlaquddlf/html/PINK/ad.php on line 6
이렇게 뜹니다..ㅜ.ㅜ.. 사용 할수 잇게 도와 주셔요..ㅜ.ㅜ.....
에구 6번라인 include_once("$g4[path]/extend/developer.lib.php"); 이넘을 지우니깐 되는군요,
자문 자답이 되엇네요.. 잘 사용할께요
자문 자답이 되엇네요.. 잘 사용할께요
감사합니다....잘사용하겠습니다..^^
header("Content-Type: text/html; charset=$g4[charset]");
$gmnow = gmdate("D, d M Y H:i:s") . " GMT";
header("Expires: 0"); // rfc2616 - Section 14.21
header("Last-Modified: " . $gmnow);
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: pre-check=0, post-check=0, max-age=0"); // HTTP/1.1
header("Pragma: no-cache"); // HTTP/1.0
head.sub.php 파일에서 위의 라인은 32~38라인입니다.
제 계정 extend안에 developer.lib.php 를 넣었더니 32,34,35,36,37,38 라인 에러가 납니다. head.sub.php 안에서 났다고 메시지가 뜨는데...어찌해야할까요
$gmnow = gmdate("D, d M Y H:i:s") . " GMT";
header("Expires: 0"); // rfc2616 - Section 14.21
header("Last-Modified: " . $gmnow);
header("Cache-Control: no-store, no-cache, must-revalidate"); // HTTP/1.1
header("Cache-Control: pre-check=0, post-check=0, max-age=0"); // HTTP/1.1
header("Pragma: no-cache"); // HTTP/1.0
head.sub.php 파일에서 위의 라인은 32~38라인입니다.
제 계정 extend안에 developer.lib.php 를 넣었더니 32,34,35,36,37,38 라인 에러가 납니다. head.sub.php 안에서 났다고 메시지가 뜨는데...어찌해야할까요
오..해결했네요^^&
?>줄을 삭제했더니 깔끔해졌네요 히히히~
?>줄을 삭제했더니 깔끔해졌네요 히히히~
너무 좋습니다 근데 굳이 developer.php를 extend에 넣어야 하나요? 전 에러나서 그냥 ad.php 위에다 포함시켜 버렸음.
너무 좋습니다
초보자들을 위해서 완전수정판을 올려주시면 않될까요? 부탁드립니다..

필요한 것이엿는데.. ^^ 정말 감사합니다.
감사합니다.^^ 감사합니다.^^...
Fatal error: Cannot redeclare r_latest() (previously declared in /home/hosting_users/kenip/www/extend/developer.lib.php:3) in /home/hosting_users/kenip/www/extend/developer.lib.php on line 31 이런오류가 뜨는데 왜그런가요?
덮어씌우니깐 - -;;;괜찮아졌네요..진땀 뺏습니다 ㅠ_ㅠ
앗 성공했슴당 감사해요^_^

여러개를 랜덤 추출하고 싶은대요 가로 3개 세로 4개 총 12개를 추출하고 싶어요
글애서 추출시에 <?=r_latest("text", text, 12, 40, "$member[mb_id]");?>
일케 하려는대 안되네요,
어떻게 하면 좋을까요...
글씨대신 이미지 추출하는건 성공했습니다 ^^v
글애서 추출시에 <?=r_latest("text", text, 12, 40, "$member[mb_id]");?>
일케 하려는대 안되네요,
어떻게 하면 좋을까요...
글씨대신 이미지 추출하는건 성공했습니다 ^^v
훌륭합니다.

좋은 게시물 감사합니다. ^^
good~~~~
ㄳ
^^ 제가 찾던 넘입니당...^^ 감사히 잘 쓰겠습니다..~
제홈피에 바로 적용해보겠습니다...ㅋㅋ
사랑합니다.
저두 관심이 있던건데 잘 써볼게요. 감사합니다.
제가 그누보드를 접한지 이제 4일이 되어서 잘 모릅니다.
제가 따라해보려하는데 모르는 것이 있어서요.
윗글에
<설치방법>
extend 폴더 안에 developer.lib.php 파일을 열어 아래의 소스를 맨 아래 ?> 위에 붙여 넣으세요.
근데 extend 폴더는 어디에 위치하고 있나요?
그누보드 압축해제하고 여기저기 봐도 extend 폴더가 있는 위치를 못찾겠습니다.
아시는 분이 있다면 폴더경로 자세히 가르셔 주시면 고맙겠습니다.
앞으로 잘 부탁드립니다. 감사합니다.
제가 따라해보려하는데 모르는 것이 있어서요.
윗글에
<설치방법>
extend 폴더 안에 developer.lib.php 파일을 열어 아래의 소스를 맨 아래 ?> 위에 붙여 넣으세요.
근데 extend 폴더는 어디에 위치하고 있나요?
그누보드 압축해제하고 여기저기 봐도 extend 폴더가 있는 위치를 못찾겠습니다.
아시는 분이 있다면 폴더경로 자세히 가르셔 주시면 고맙겠습니다.
앞으로 잘 부탁드립니다. 감사합니다.
감사~
감사히 잘 쓰겠습니다.^^
한번에 설치했네요 ㅎ 좋은정보 감사합니다 .
select * from g4_write_게시판명 where wr_is_comment='0' and wr_1>='2007-02-10' and
이렇게 나오면서 안되는데 어떻게 하면되나용?
이렇게 나오면서 안되는데 어떻게 하면되나용?
좋은 스킨 감사합니다~^^

좋은 스킨 감사 드립니다

잘 만드셨네요

감사합니다.
사용???

상당히 유용할듯한 팁이네요
