촙보님// 스크랩기능 베타 소스(수정) 정보
촙보님// 스크랩기능 베타 소스(수정)관련링크
http://sir.kr/g3_tiptech/3680
127회 연결
http://threes.org
95회 연결
첨부파일
본문
촙보님께서 작성제공하신 "그누게시판 스크랩기능 베타 소스~"를 바탕으로 프로그램을 수정하였습니다.
http://www.sir.co.kr/?doc=bbs/gnuboard.php&bo_table=tiptech&wr_id=3680
[1] 촙보님께서 제공하신 프로그램과의 차이점 및 설치법
1. gnuscrap.php는 bbs 디렉토리에 설치하세요.
2. 스크랩을 담아둘수있는 gb_member_scrapbook 테이블 생성 부분
2-1) gb_member_scrapbook 테이블 생성부분
압축파일에 있는 install_scrap.php를 bbs/admin/ 디렉토리에 넣으시고 웹에서 실행하세요.
CREATE TABLE gb_member_scrapbook (
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
2-2) 기존 촙보님의 gb_member_scrapbook의 테이블에서 mem_no 필드가 제거,
2-3) user_id 필드가 mb_id로 변경(그누보드에서 id를 mb_id로 사용하므로 통일해가도록 하겠습니다.)
2-4) mb_id와 list_id가 100으로 되어있던 사이즈를 20으로 수정합니다.(그누보드에서 사용하는것이 20이므로 크게 잡아도 의미가 없기 때문에 그누보드에 맞게 수정합니다.)
사이즈를 줄이지 않아도 문제가 없으나, mb_id에 index를 설정해야 하므로 속도문제가 발생할수있습니다.
3. gb_member_scrapbook 테이블에서 mem_no를 사용하지 않고 mb_id를 사용하므로
기존 촙보님께서 gb_member에 추가하신 mb_no는 사용하지 않습니다.
4. 스크랩을 적용할 게시판스킨에서 gbview.skin.php파일 적당한 부분에 다음을 추가
(제목에 특수문제가 있을경우 스크랩이 안되는 문제 개선하기위히여 urnencode()가 추가되었습니다)
<a onfocus=blur() href="javascript:void(window.open('./?doc=bbs/gnuscrap.php&exec=input&list_id=<?=$bo_table?>&list_no=<?=$wr_id?>&list_subject=<?=urlencode($subject)?>','scrap','width=500,height=400,resizable=yes,toolbars=no,scrollbars=auto'))"><span style="font-size:9pt;">[이 글 스크랩]</span></a>
5. 회원각자가 스크랩을 확인하기위해 outlogin스킨의 outlogin.skin.php파일 적당한 부분에 다음을 추가
<a href="javascript:winopen('./?doc=bbs/gnuscrap.php','scrap','width=500,height =400,resizable=yes,toolbars=no,scrollbars=auto');">내 스크랩 보기</a>
[2] 촙보님께서 제공하신 프로그램에서 기능개선점
1. 페이지 처리 오류 및 페이지 표시 방법 개선
2. 스크랩할 글의 제목에 특수문자가 있을경우 스크랩 안되는 문제 해결
3. 첨부파일이 이미지 파일이 아닌것을 이미지로 인식하여 화면에 보여주는 문제 해결
4. gb_member 테이블 수정없이 스크랩기능 사용가능
http://www.sir.co.kr/?doc=bbs/gnuboard.php&bo_table=tiptech&wr_id=3680
[1] 촙보님께서 제공하신 프로그램과의 차이점 및 설치법
1. gnuscrap.php는 bbs 디렉토리에 설치하세요.
2. 스크랩을 담아둘수있는 gb_member_scrapbook 테이블 생성 부분
2-1) gb_member_scrapbook 테이블 생성부분
압축파일에 있는 install_scrap.php를 bbs/admin/ 디렉토리에 넣으시고 웹에서 실행하세요.
CREATE TABLE gb_member_scrapbook (
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ;
2-2) 기존 촙보님의 gb_member_scrapbook의 테이블에서 mem_no 필드가 제거,
2-3) user_id 필드가 mb_id로 변경(그누보드에서 id를 mb_id로 사용하므로 통일해가도록 하겠습니다.)
2-4) mb_id와 list_id가 100으로 되어있던 사이즈를 20으로 수정합니다.(그누보드에서 사용하는것이 20이므로 크게 잡아도 의미가 없기 때문에 그누보드에 맞게 수정합니다.)
사이즈를 줄이지 않아도 문제가 없으나, mb_id에 index를 설정해야 하므로 속도문제가 발생할수있습니다.
3. gb_member_scrapbook 테이블에서 mem_no를 사용하지 않고 mb_id를 사용하므로
기존 촙보님께서 gb_member에 추가하신 mb_no는 사용하지 않습니다.
4. 스크랩을 적용할 게시판스킨에서 gbview.skin.php파일 적당한 부분에 다음을 추가
(제목에 특수문제가 있을경우 스크랩이 안되는 문제 개선하기위히여 urnencode()가 추가되었습니다)
<a onfocus=blur() href="javascript:void(window.open('./?doc=bbs/gnuscrap.php&exec=input&list_id=<?=$bo_table?>&list_no=<?=$wr_id?>&list_subject=<?=urlencode($subject)?>','scrap','width=500,height=400,resizable=yes,toolbars=no,scrollbars=auto'))"><span style="font-size:9pt;">[이 글 스크랩]</span></a>
5. 회원각자가 스크랩을 확인하기위해 outlogin스킨의 outlogin.skin.php파일 적당한 부분에 다음을 추가
<a href="javascript:winopen('./?doc=bbs/gnuscrap.php','scrap','width=500,height =400,resizable=yes,toolbars=no,scrollbars=auto');">내 스크랩 보기</a>
[2] 촙보님께서 제공하신 프로그램에서 기능개선점
1. 페이지 처리 오류 및 페이지 표시 방법 개선
2. 스크랩할 글의 제목에 특수문자가 있을경우 스크랩 안되는 문제 해결
3. 첨부파일이 이미지 파일이 아닌것을 이미지로 인식하여 화면에 보여주는 문제 해결
4. gb_member 테이블 수정없이 스크랩기능 사용가능
추천
1
1
댓글 전체
혜심// 따옴표 있는게 정상입니다. 제거하면 에러발생합니다.
위 파일 수정^^ 마지막에 따옴표 없어야 됩니다.
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
define("_GNUADMIN_", "DEFAULT");
include "./bbs/admin/admin.lib.php";
$html_title = "스크랩 디비생성";
$sql = "
CREATE TABLE gb_member_scrapbook(
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ; <-----요기 주의하세요 ^^
@mysql_query($sql);
// 기존 테이블에 mb_id 만 index 를 설정하고자하는분은 다음의 주석을 제거하고 사용하세요.
//mysql_query("ALTER TABLE gb_member_scrapbook ADD INDEX ( mb_id ) ;");
echo "gb_member_scrapbook디비생성 하였습니다.";
gotourl("./?doc=bbs/admin/index.php");
?>
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
define("_GNUADMIN_", "DEFAULT");
include "./bbs/admin/admin.lib.php";
$html_title = "스크랩 디비생성";
$sql = "
CREATE TABLE gb_member_scrapbook(
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ; <-----요기 주의하세요 ^^
@mysql_query($sql);
// 기존 테이블에 mb_id 만 index 를 설정하고자하는분은 다음의 주석을 제거하고 사용하세요.
//mysql_query("ALTER TABLE gb_member_scrapbook ADD INDEX ( mb_id ) ;");
echo "gb_member_scrapbook디비생성 하였습니다.";
gotourl("./?doc=bbs/admin/index.php");
?>
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\www\htdocs\gnu3\bbs\gnuscrap.php on line 37
No. 이미지 제목 이름 날짜 삭제
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\www\htdocs\gnu3\bbs\gnuscrap.php on line 64
*(현재/전체) (/50)개의 게시글이 스크랩되어 있습니다.
*게시글을 클릭하면 해당 게시글로 이동합니다.
*스크랩상자 비우기
==================================================================================
위와 같은 에러가 나는 것은 왜이지요? ^^
No. 이미지 제목 이름 날짜 삭제
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\www\htdocs\gnu3\bbs\gnuscrap.php on line 64
*(현재/전체) (/50)개의 게시글이 스크랩되어 있습니다.
*게시글을 클릭하면 해당 게시글로 이동합니다.
*스크랩상자 비우기
==================================================================================
위와 같은 에러가 나는 것은 왜이지요? ^^
root님............
제목이 큰따옴표(")인 경우는 스크랩이 되는데 작은따옴표(')인 경우는 스크랩이 안됩니다. ^^
제목이 큰따옴표(")인 경우는 스크랩이 되는데 작은따옴표(')인 경우는 스크랩이 안됩니다. ^^
감사합니다... 어디서 이거보고 마냥 신기해하고 왔는데 여기있었군요...^^
애쓰셨습니다...^^
잘쓸께요....^^
잘쓸께요....^^
한상철님 gb_member에 추가한 필드는 사용하지 않으므로 삭제하셔도 되고, 안하셔도 전혀 문제 없습니다
그럼 기존의 gb_memebr 테이블에 추가한 필드는 삭제해야 하는지요? 그냥 놔둬두 될 것 같은데..^^
반응이 없네요...이런
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
define("_GNUADMIN_", "DEFAULT");
include "./bbs/admin/admin.lib.php";
$html_title = "스크랩 디비생성";
$sql = "
DROP TABLE gb_member_scrapbook;
CREATE TABLE gb_member_scrapbook(
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ";
@mysql_query($sql);
// 기존 테이블에 mb_id 만 index 를 설정하고자하는분은 다음의 주석을 제거하고 사용하세요.
//mysql_query("ALTER TABLE gb_member_scrapbook ADD INDEX ( mb_id ) ;");
echo "gb_member_scrapbook디비생성 하였습니다.";
gotourl("./?doc=bbs/admin/index.php");
?>
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
define("_GNUADMIN_", "DEFAULT");
include "./bbs/admin/admin.lib.php";
$html_title = "스크랩 디비생성";
$sql = "
DROP TABLE gb_member_scrapbook;
CREATE TABLE gb_member_scrapbook(
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ";
@mysql_query($sql);
// 기존 테이블에 mb_id 만 index 를 설정하고자하는분은 다음의 주석을 제거하고 사용하세요.
//mysql_query("ALTER TABLE gb_member_scrapbook ADD INDEX ( mb_id ) ;");
echo "gb_member_scrapbook디비생성 하였습니다.";
gotourl("./?doc=bbs/admin/index.php");
?>
아~~
그전에 촙보님꺼 때문에?
해 볼께요
그전에 촙보님꺼 때문에?
해 볼께요
7쟁이님 그렇다면 혹시 기존에 테이블 만들어둔것 때문인지도 모르니...
$sql = " 다음줄에 기존에 있는 테이블 삭제하는 명령 DROP TABLE gb_member_scrapbook 을 추가해보세요.
다음처럼...
$sql = "
DROP TABLE gb_member_scrapbook;
CREATE TABLE gb_member_scrapbook(
$sql = " 다음줄에 기존에 있는 테이블 삭제하는 명령 DROP TABLE gb_member_scrapbook 을 추가해보세요.
다음처럼...
$sql = "
DROP TABLE gb_member_scrapbook;
CREATE TABLE gb_member_scrapbook(
모레쯤 테스트해 보겠습니다.
구~~~
이상하네요 ..
다른분들은 잘 되시나 봐요?
아무 말씀이 없는걸 보면....헥!
다른분들은 잘 되시나 봐요?
아무 말씀이 없는걸 보면....헥!
ㅋㅋ
"질문과 답변"란에 질문올리는것은 두번째인것 같은데...
질문한 이미지 처리 문제 때문에 정신이 없군요.
http://sir.co.kr/?doc=bbs/gnuboard.php&bo_table=qa&wr_id=20478
"질문과 답변"란에 질문올리는것은 두번째인것 같은데...
질문한 이미지 처리 문제 때문에 정신이 없군요.
http://sir.co.kr/?doc=bbs/gnuboard.php&bo_table=qa&wr_id=20478
이런.. 죄송합니다. 확인해보니.... install_scrap.php가 잘못된부분이 있었습니다.
다음처럼 하시거나 다시 받으세요.
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
define("_GNUADMIN_", "DEFAULT");
include "./bbs/admin/admin.lib.php";
$html_title = "스크랩 디비생성";
$sql = "
CREATE TABLE gb_member_scrapbook(
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ";
@mysql_query($sql);
// 기존 테이블에 mb_id 만 index 를 설정하고자하는분은 다음의 주석을 제거하고 사용하세요.
//mysql_query("ALTER TABLE gb_member_scrapbook ADD INDEX ( mb_id ) ;");
echo "gb_member_scrapbook디비생성 하였습니다.";
gotourl("./?doc=bbs/admin/index.php");
?>
다음처럼 하시거나 다시 받으세요.
<?
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
define("_DOCTYPE_", "DESIGN");
define("_GNUADMIN_", "DEFAULT");
include "./bbs/admin/admin.lib.php";
$html_title = "스크랩 디비생성";
$sql = "
CREATE TABLE gb_member_scrapbook(
no int(20) NOT NULL auto_increment,
mb_id varchar(20) default NULL,
list_id varchar(20) default NULL,
list_no int(20) NOT NULL default '0',
list_subject varchar(255) default NULL,
date int(13) NOT NULL default '0',
image varchar(255) default NULL,
PRIMARY KEY (no),
INDEX (mb_id)
) TYPE=MyISAM AUTO_INCREMENT=1 ";
@mysql_query($sql);
// 기존 테이블에 mb_id 만 index 를 설정하고자하는분은 다음의 주석을 제거하고 사용하세요.
//mysql_query("ALTER TABLE gb_member_scrapbook ADD INDEX ( mb_id ) ;");
echo "gb_member_scrapbook디비생성 하였습니다.";
gotourl("./?doc=bbs/admin/index.php");
?>
?=bbs/admin/install_scrap.php <--왜 안되죠....잉~~~
저는 이런기능이 있는지도 몰랐었는데.. 참으로 유용하더군요
촙보/아뵤~//님 넘 감사합니다.
촙보/아뵤~//님 넘 감사합니다.
좋은 소스가 몇개더 있는데 좀더 수정해서 조만간 올려보겠습니다.@@
일하던 회사가 파산하는 바람에 ㅠ.ㅠ
그동안 거기서 작업했던 몇개 소스 올려보도록 하겠습니다...
일하던 회사가 파산하는 바람에 ㅠ.ㅠ
그동안 거기서 작업했던 몇개 소스 올려보도록 하겠습니다...
아하하 베타판만 내놓구 손도 안되구 있었는뎅.... 이렇게 멋지게 업글해 주시다니... 루트님 수고 많이 하셨습니다~
키키~~
드디어 나왔군요^^
감사합니다
드디어 나왔군요^^
감사합니다
아 왜 이런 대박 기능을 몰랐지 ㅎㅎㅎ 감사합니다!T_T