[미완성본]게시판글 블로그로 퍼가기 정보
[미완성본]게시판글 블로그로 퍼가기
관련링크
http://myway.my5yes.com/
538회 연결
본문
초보의 테스트한 팁이기에 설명이 부족해도 양해를 부탁드립니다.
전체적인 제어 및 중복 체크등의 루틴은 적용되지 않았습니다.
이는 사용하시고자 하시는 분의 노력으로 남겨 둡니다.
게시판 보기에서 자신의 브로그가 동일한 게정내에 있을경우(?) 내 블로그로 퍼가는 기능입니다.
우선 그누보드 게시판 스킨의 view.skin.php에 내 블로그가 있는지 체크하는 루틴이 들어가야 합니다.
1. 기본으로 배포되는 gblog.config.php가 불려져야 하고
스킨에서
<? $blog_chk = sql_fetch("select * from $gb4[blog_table] where mb_id='$member[mb_id]'");
if ($blog_chk['id']) { //내 블로그가 있다면
echo "<a href='$board_skin_path/pum_blog.php?blog_id=$blog_chk[id]&bo_table=$bo_table&wr_id=$wr_id'><font color=#6F76C0><b>퍼가기($blog_chk[id])</b></font></a>";
} ?>
echo "<a href='$board_skin_path/pum_blog.php?blog_id=$blog_chk[id]&bo_table=$bo_table&wr_id=$wr_id'><font color=#6F76C0><b>퍼가기($blog_chk[id])</b></font></a>";
} ?>
2. 해당 스킨에 _common.php로 업합니다.
경로등은 본인 환경에 맞추세요....
<?
$g4_path = "../../.."; // common.php 의 상대 경로
include_once("$g4_path/common.php");
include_once("$g4[path]/lib/blog.lib.php");
include_once("$g4[path]/gblog.config.php");
?>
$g4_path = "../../.."; // common.php 의 상대 경로
include_once("$g4_path/common.php");
include_once("$g4[path]/lib/blog.lib.php");
include_once("$g4[path]/gblog.config.php");
?>
3. 아래 내용을 해당 스킨에 위 1번에서 정의한 화일로 업 합니다.
<?
include_once('./_common.php');
include_once('./_common.php');
$blog_chk = sql_fetch("select * from $gb4[blog_table] where mb_id='$member[mb_id]'");
if( $blog_chk['mb_id'] != $member['mb_id'] )
alert('자신의 블로그에만 펌 할 수 있습니다.');
if( $blog_chk['mb_id'] != $member['mb_id'] )
alert('자신의 블로그에만 펌 할 수 있습니다.');
// 원본글 정보를 가져온다.
$r = sql_fetch("select * from {$write_table} where wr_id='{$wr_id}'");
$r = sql_fetch("select * from {$write_table} where wr_id='{$wr_id}'");
if( $secret == 0 )
$count_field = 'secret_count';
else
$count_field = 'post_count';
$content = addslashes($r['wr_content']);
// 글을 등록한다.
$sql = "insert into
{$gb4['post_table']}
set
blog_id = '{$blog_chk['id']}'
,category_id = '{$category_id}'
,division_id = '{$division_id}'
,title = '{$r['wr_subject']}'
,content = '{$content}'
,trackback_url = '{$r['trackback_url']}'
,post_date = '{$r['wr_datetime']}'
,secret = '1'
,use_comment = '1'
,use_trackback = '1'
,use_rss = '1'
,real_date = '{$g4['time_ymdhis']}'";
sql_query($sql);
// 방금 등록한 글 고유 번호를 센타깐다.
$id = mysql_insert_id();
$id = mysql_insert_id();
// 해당 분류의 글 카운트를 증가시킨돠.
if( $category_id )
sql_query("update {$gb4['category_table']} set {$count_field} = {$count_field} + 1 where id = '{$category_id}'");
if( $category_id )
sql_query("update {$gb4['category_table']} set {$count_field} = {$count_field} + 1 where id = '{$category_id}'");
// 태그를 붙인다.
//tag_add($id, $tag);
//tag_add($id, $tag);
// 해당 블로그 정보 테이블에 글 갯수 증가 및 마지막 업데이트 시간을 현재로 변경한다.
$sql = "update
{$gb4['blog_table']}
set
{$count_field} = {$count_field} + 1
,last_update = '{$g4['time_ymdhis']}'
where
mb_id='{$member['mb_id']}'";
sql_query($sql);
// 월별 글 갯수를 증가시킨다.
$monthly = substr($post_date,0,7);
$res = sql_fetch("select * from {$gb4['monthly_table']} where blog_id='{$current['id']}' and monthly='$monthly'");
if( empty($res) )
sql_query("insert {$gb4['monthly_table']} set blog_id='{$current['id']}', monthly='{$monthly}', {$count_field}=1");
else
sql_query("update {$gb4['monthly_table']} set {$count_field} = {$count_field} + 1 where blog_id='{$current['id']}' and monthly='{$monthly}'");
sql_query("insert {$gb4['monthly_table']} set blog_id='{$current['id']}', monthly='{$monthly}', {$count_field}=1");
else
sql_query("update {$gb4['monthly_table']} set {$count_field} = {$count_field} + 1 where blog_id='{$current['id']}' and monthly='{$monthly}'");
// 업로드 파일
//sql_query("update {$gb4['file_table']} set post_id='{$id}' where blog_id='{$current['id']}' and post_id='0'");
//sql_query("update {$gb4['file_table']} set post_id='{$id}' where blog_id='{$current['id']}' and post_id='0'");
$result = sql_query(" select * from $g4[board_file_table] where bo_table = '$bo_table' and wr_id = '$wr_id' order by bf_no asc ");
for ($i=0; $i<$r = sql_fetch_array($result); $i++)
{
$sql = " insert into {$gb4['file_table']}
set blog_id = '{$blog_chk['id']}',
post_id = '{$id}',
file_num = '{$r['bf_no']}',
file_size = '{$r['bf_filesize']}',
save_name = '{$r['bf_file']}',
real_name = '{$r['bf_source']}',
file_datetime = '{$r['bf_datetime']}'";
sql_query($sql);
$dest_file = "{$g4[path]}/data/blog/file/{$blog_chk[mb_id]}/{$r[bf_file]}";
@copy("{$g4[path]}/data/file/{$bo_table}/{$r[bf_file]}", $dest_file) ;
@chmod($dest_file, 0606);
}
{
$sql = " insert into {$gb4['file_table']}
set blog_id = '{$blog_chk['id']}',
post_id = '{$id}',
file_num = '{$r['bf_no']}',
file_size = '{$r['bf_filesize']}',
save_name = '{$r['bf_file']}',
real_name = '{$r['bf_source']}',
file_datetime = '{$r['bf_datetime']}'";
sql_query($sql);
$dest_file = "{$g4[path]}/data/blog/file/{$blog_chk[mb_id]}/{$r[bf_file]}";
@copy("{$g4[path]}/data/file/{$bo_table}/{$r[bf_file]}", $dest_file) ;
@chmod($dest_file, 0606);
}
goto_url( get_post_url($id) );
?>
이제 시험해 보시면 됩니다.
이 기능을 사용하시려면 gblog.config.php를 head.php에서 인클루드 하시면 편할듯 한 개인 생각입니다.
**** 제홈 자유게시판에서 테스트 하실수 있도록 잠시 플그램을 수정해 놓았습니다.
자유게시판에서 퍼가기를 할경우 블로그로 글과 첨부이미지가 가는지 정도만 확인해 보시고
나머지 부분은 서두에서처럼 사용하고자 하시는 분의 몫으로 응용하십시오.
댓글 전체
항상 도움되는 답변 잘 보고 있어요.!! ^-^
좋은 팁도 잘쓸게요.
좋은 팁도 잘쓸게요.
별거 아닙니다...왕초보의 허접한 것입니다...
다음부터는 이런것도 올리지 못할듯 싶네요....ㅠ.ㅠ
다음부터는 이런것도 올리지 못할듯 싶네요....ㅠ.ㅠ
켁~~~!
링크를 삭제하려고 수정하려니 안된다네....ㅠ.ㅠ
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
링크를 삭제하려고 수정하려니 안된다네....ㅠ.ㅠ
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
링크가셔도 테스트 안됩니다...
와하하
소스가 너무 허접한것 같아서 링크를 지우려 했더니
댓글 하나 달랑 붙었다고 수정 안된다자나요....ㅠ.ㅠ
그래서 그냥 놓고 링크에서만 소스 수정을....ㅠ.ㅠ
댓글 하나 달랑 붙었다고 수정 안된다자나요....ㅠ.ㅠ
그래서 그냥 놓고 링크에서만 소스 수정을....ㅠ.ㅠ
아~ 멋집니다. 수고 하셨어요~ ^^
그런데 처녀뱃사공님 사이트랑 비슷;;;
그런데 처녀뱃사공님 사이트랑 비슷;;;
뱃사공님이 닉을 바꾸셨나..
탈퇴하면 토크가 삭제되나해서 탈퇴한 닉입니다...뱃사공은....ㅠ.ㅠ
결론은 토크는 남았더만요....ㅋ.ㅋ
결론은 토크는 남았더만요....ㅋ.ㅋ
현재 상기 팁아닌 팁의 내용이 진화하여
댓글도 작성시간에 근거하여 댓글의 댓글까지 달린 순서에 의해 펌하기 기능(블로그로 펌했을시는 시간이 아닌 매달린 순서에 의해 댓글로 복사)까지 진전이 있었으나
이 팁에 대해 업그레이드 계획은 없습니다.
http://myway.my5yes.com/k_01/blog/167
댓글도 작성시간에 근거하여 댓글의 댓글까지 달린 순서에 의해 펌하기 기능(블로그로 펌했을시는 시간이 아닌 매달린 순서에 의해 댓글로 복사)까지 진전이 있었으나
이 팁에 대해 업그레이드 계획은 없습니다.
http://myway.my5yes.com/k_01/blog/167
죄송합니다.
관리자모드에서 해당 게시판을 통째로 블로그로 복사하는 기능까지 완료되었으나 위에 언급한 것처럼
위 팁에 대한 업그레이드 계획이나 해당 팁에 대한 추가 공개는 계획이 없습니다.
또한 그 누구도 제게 공개를 요구(?)할 권한은 없습니다.
기본배포되는 것이 아니기에 또한 위 기능은 기본 기능이 아니기에 더군다나 공개하지 않으려 합니다.
그누보드나 지블로그나 현재 배포되는 형태로 굴러가는데는 문제가 없습니다. 사용자 환경이나 사용자의 기능추가/확장은
각 사용자의 몫이겠지요.
기본배포본의 버그가 아닌 사용자요구(?)에 의한 것은 각 개인의 버그라 합니다...^^
거듭 죄송하다는 말씀 드립니다..
아래는 위 팁의 업그레이드된 것의 화면 캡쳐부분입니다.
http://myway.my5yes.com/k_01/bbs/board.php?bo_table=fr_board&wr_id=61
관리자모드에서 해당 게시판을 통째로 블로그로 복사하는 기능까지 완료되었으나 위에 언급한 것처럼
위 팁에 대한 업그레이드 계획이나 해당 팁에 대한 추가 공개는 계획이 없습니다.
또한 그 누구도 제게 공개를 요구(?)할 권한은 없습니다.
기본배포되는 것이 아니기에 또한 위 기능은 기본 기능이 아니기에 더군다나 공개하지 않으려 합니다.
그누보드나 지블로그나 현재 배포되는 형태로 굴러가는데는 문제가 없습니다. 사용자 환경이나 사용자의 기능추가/확장은
각 사용자의 몫이겠지요.
기본배포본의 버그가 아닌 사용자요구(?)에 의한 것은 각 개인의 버그라 합니다...^^
거듭 죄송하다는 말씀 드립니다..
아래는 위 팁의 업그레이드된 것의 화면 캡쳐부분입니다.
http://myway.my5yes.com/k_01/bbs/board.php?bo_table=fr_board&wr_id=61
좋은 발상 감사합니다. 필요한 것은 알아서 고쳐써야죠...
감사합니다. 유용하게 이용될 수 있을것 같습니다.