BLOG main image
분류 전체보기 (46)
MyThing (8)
Media (9)
Tech (8)
Information (15)
이모저모 (6)
MS outlook 2010
KyujinessWeek - Season 2
IDG 뉴스레터 | 미리보는 MS 오..
Bluesky
러프 -아다치미츠루
김재호의 디지털보단 아날로그
EP45-UD3R + BOOT-132 + 순정 Le..
Ritz's Home
«   2010/03   »
  1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31      
30,534 Visitors up to today!
Today 16 hit, Yesterday 38 hit
daisy rss
tistory A
2009/03/02 16:59

MintUTIL v0.6.5(그누보드 용)

다시 업 되었습니다. ㅡㅡㅋ
ShoutBox가 추가 되었습니다. 한국에서는 잘 안쓰는데 외국에서는 많이 쓰는 소스 입니다.
채팅과 비슷합니다. shoutBoxReceiveTime 값을 조절 하시면 체팅효과를 보실 수 있습니다.
이것을 추가한 이유는 기존 체팅은 트래픽을 많이 잡아 먹습니다.
채팅의 초기 버전인 페이지 리플레쉬는 호스팅업체에서 설치를 못하게 하였습니다.
ajax로된 채팅도 설치를 못하게 하는 호스팅도 많다고 합니다.
그래서 채팅 효과를 줄 수 있는 ShoutBox를 쓰면 됩니다. 문론 shoutBoxReceiveTime 값은 최대한 크게 잡아 트래픽에 영향을 덜 주게 해야합니다.
약 4분정도면 좋은 것 같은데, 기본으로 1분으로 해놨습니다.
이 ShoutBox는 XHTML live Chat 를 응용한 것입니다.

기존 부분에서는 달라진건 없구, 채팅부분에 강퇴만 적용 되었습니다. 몇몇 분이 요청이 있어서.

전에 설치 하셨던 분들은 파일을 덮어 씌우시고
관리자의 채팅에서 DB를 삭제하신후 다시 생성 하십시오.
멤버 부분의 Ban 필드와 Close 필드가 추가 되었습니다.

간략하게 다시 설명 드립니다.
MintUTIL은 그누보드에 필요할것 같은 유틸을 모아 놓은 것입니다.
최대한 그누보드는 건드리지 않습니다. 때문에 다른 보드에도 쉽게 적용이 될 것입니다.

1. 팝업
* 멀티 팝업(여러개의 팝업 동시에 띄우기)
* 회원레벨에 따라 팝업 보여주기.
* 팝업 시작시간 종료시간 설정.
* 팝업 위치를 x,y축으로 지정하거나 좌측, 중앙, 우측, 상단, 중단, 하단의 조합으로 설정 가능.
* 팝업 재 오픈 기간(쿠키 시간) 설정.
* 스크롤 사용 등..

2. 배너
* 멀티 배너(여러개의 배너 등록하여 지정한 갯수의 배너 랜덤으로 추출)
* 회원레벨에 따라 배너 보여주기
* HTML, 이미지, 플레쉬 3가지 종류로 입력

3. 추천
* 각글에 따른 별표 추천기능
* 중복 투표 방지
* 게시판별로 사용 유무


4. 채팅
* Ajax를 기반으로 만들어 activeX, 플레쉬 등을 필요로 하지 않음.
* 멀티 채팅방 생성
* 페스워드, 정원 설정 가능
* 폰트(종류, 색, 크기, 굵게, 기울림, 밑줄) 선택 하여 입력
* WebFont 적용가능
* 이모티콘, 방청소, 갈무리, 귓속말 가능
* 방장에게 강퇴 기능 부여

4. ShoutBox
* Ajax를 기반으로 만들어 졌음.
* 이름에 링크 추가 가능.
* 내용에 자동링크 생성
* XHTML을 이용하여 내용출력시 다이나믹한 화면을 보여줌.
(디자인만 잘입히면 이쁜 ShoutBox를 꾸밀수 있습니다, 기본 틀만 잡아 놨습니다.)

기본 설치 방법은
Gnu Board ROOT 디렉토리의 common.php 파일에
include_once("$g4[path]/MintUtil/MintLib.php"); // MintUTIL 라이브러리
include_once("$g4[path]/MintUtil/MintLib_upload.php"); // MintUTIL 업로드 라이브러리
을 추가 하시면 됩니다.

ps. 설치방법은 묻는 분들이 종종 계시는데 설치 방법은 위 코드를 common.php에 넣고 나머지는 각각의 유틸에 따라 관리자페이지의 도움말을 클릭 하시면 됩니다. 도움말 클릭시 팝업창으로 설치 방법과 간단한 설명이 들어 있습니다.



테스트는 http://go3.co.kr/ 에서 하시면 됩니다.

ps. 배너 수정 에러가 있어 수정 하였습니다.(4/2)
ps. 비영리, 개인 사용자를 위한 것입니다. 영리나 에이전시 등의 곳에서는 사용할 수 없습니다.

저작자 표시 비영리 동일 조건 변경 허락
Trackback Address :: http://blog.yesyo.com/trackback/15 관련글 쓰기
BlogIcon 공부하는자 | 2009/03/03 16:51 | PERMALINK | EDIT/DEL | REPLY
감사합니다^^ 덕분에 좋은 유틸 정말 잘쓰고있습니다..

근데 전 아직도 채팅분류문제가 해결이 안되네요 ㅠ

이번 버전을 적용하니까 분류 표시가 아예 안되더라구요..

http://adisk.mvix.net/c119/chat.php 여기서 테스트하실수있습니다..ㅠㅠ

그누보드 포스트를 바꾸면 나중에 많이 골치아파질것같아서 그런데요... 이 유틸의 POST 변수값을 변경해서 사용하고싶은데 어떻게해야하나요?

음, 그리고 추천기능에서 관리자 화면의 추천내역에 추천한 사람의 별명도 나왔으면 좋겠습니다^^
BlogIcon 공부하는자 | 2009/03/03 16:47 | PERMALINK | EDIT/DEL | REPLY
ShoutBox 요 도움말 보니까 <?=showShoutBox(ShoutBox를 보여줄 최소 회원 레벨);?> 를 넣으면된다고 써있는데요...
include_once("<?=showShoutBox(1);?>"); 이렇게 넣으면되는건가요?
BlogIcon MintState | 2009/03/04 10:11 | PERMALINK | EDIT/DEL
include_once("<?=showShoutBox(1);?>"); 는 맞는 문법이 아님니다.
php를 공부하세요.
html 안에 <?=showShoutBox(1);?> 라고만 입력 하면 됩니다.
BlogIcon 공부하는자 | 2009/03/04 21:29 | PERMALINK | EDIT/DEL | REPLY
아하, <?=showShoutBox(1);?> 만 넣었었는데 이상하게 에러가 떠서 인클루드도 해봤었거든요..~

게시판 스킨의 list.skin.php 파일안에 넣어서 그랬었을까요?~
BlogIcon 공부하는자 | 2009/03/04 21:30 | PERMALINK | EDIT/DEL | REPLY
추가되었으면 하는 기능이 있습니다. 추천기능이요...요거 추천에 참여하신분에게는 소정의 포인트를 줄수있는 설정기능이 있었으면 합니다...관리자 페이지에서 항시 수정이 가능하면 더욱 좋구요~^^ 추천기능을 달아놨는데..사람이라는게...이득이 없으면 그다지 손을 안쓰지 않습니까 ㅎㅎ
BlogIcon MintState | 2009/03/11 12:30 | PERMALINK | EDIT/DEL
rate.php 파일에서
echo $point_percent; 위에
if($member[mb_id]) insert_point($member[mb_id], 100, "$_entry 추천", $_en[0], $_en[1], '추천');
를 추가 시켜 주면 됩니다.
100점씩 준다는 것입니다.
BlogIcon 공부하는자 | 2009/03/07 21:50 | PERMALINK | EDIT/DEL | REPLY
추천기능 개선 요청해도되나요~?

본인이 작성한 게시물에 추천에 되더라구요..
본인이 작성한 게시물은 추천하지 못하도록 해주세요~

좋은 유틸아주많이 감사합니다!
BlogIcon MintState | 2009/03/11 12:23 | PERMALINK | EDIT/DEL
답변이 늦었습니다.
적용 방법입니다.
우선 rate.php에서
$_rating = $_POST[rating]; 밑에
$_en = explode("-",$_POST[entry]);
$sql = " select mb_id from $g4[write_prefix]$_en[0] where wr_id='$_en[1]' ";
$row = sql_fetch($sql);
if($row[mb_id] == $member[mb_id]) {
echo 'your_post'; exit;
}
를 추가 시켜주십시오.

rate.js에서는
xmlHttp.onreadystatechang 라고 시작되는 줄을
xmlHttp.onreadystatechange=function(){var loader=document.getElementById('loading_'+entry);var uldiv=document.getElementById('ul_'+entry);if(xmlHttp.readyState==4){var res=xmlHttp.responseText;if(res=='already_voted'){loader.style.display='block';loader.innerHTML='<div class="voted_twice">You already voted!</div>';}else if(res=='your_post'){loader.style.display='block';loader.innerHTML='<div class="voted_twice">This is Your Post!</div>';}else{loader.style.display='block';loader.innerHTML='<div class="voted">Thanks for voting!</div>';if(show5==true){var out=document.getElementById('outOfFive_'+entry);var calculate=res/20;out.innerHTML=Math.round(calculate*100)/100;}
로 고쳐 주시면 됩니다.
BlogIcon 공부하는자 | 2009/03/12 08:16 | PERMALINK | EDIT/DEL | REPLY
안녕하세요^^*
추천기능 개선 곰방 알려주셔서 감사합니다!

그중 다시 문의 하고싶은게 있는데요.

추천받은 사람한테 소정의 포인트를 주는것이요..
추천 등급이 1~5까지 있잖아요.

rate.php 파일에서
echo $point_percent; 위에
if($member[mb_id]) insert_point($member[mb_id], 100, "$_entry 추천", $_en[0], $_en[1], '추천');

이건 무조건 추천한사람한테 100점을 주는것같은데...
추천 한사람이 아닌 받은 사람한테만 1~5에 따라서 차등지급이 가능하도록 할려면 어떻게해야하나요?
BlogIcon MintState | 2009/03/12 09:26 | PERMALINK | EDIT/DEL
if($member[mb_id]) {
switch ($_rating) {
case "1" :
$_put_point = 10;
break;
case "2" :
$_put_point = 20;
break;
case "3" :
$_put_point = 30;
break;
case "4" :
$_put_point = 40;
break;
case "5" :
$_put_point = 50;
break;
default :
$_put_point = 10;
break;
}
insert_point($member[mb_id], $_put_point, "$_entry 추천", $_en[0], $_en[1], '추천');
}

이런 식으로 바꾸시면 됩니다.
BlogIcon 공부하는자 | 2009/03/12 08:20 | PERMALINK | EDIT/DEL | REPLY
본인게시물에는 추천 못하게 하는거 잘되는네요! 추천할때보면 thanks for... 메시지가 옆에 나오잖아요.. 본인게시물에 추천할때에는 다른 경고 메시지가 나오니까 정말 좋네요^^* 정말정말 감사합니다!

왕팬이예요!~

이 유틸 추천 많이 하구있어요~
BlogIcon 공부하는자 | 2009/03/12 15:22 | PERMALINK | EDIT/DEL | REPLY
기능 개선 요청드립니다.

배너관리에서 배너를 이미지로 생성후에 추후에 url 만 수정하면 이미지업로드 에러가 뜹니다.
url만 수정하려면 이미지를 재업로드해야지 에러가 발생하지 않더라구요.

이부분 개선 부탁드립니다~
BlogIcon 공부하는자 | 2009/03/12 15:28 | PERMALINK | EDIT/DEL | REPLY
아궁

// 추천받는사람에게 포인트 지급할때
if($member[mb_id]) {
switch ($_rating) {
case "1" :
$_put_point = 10;
break;
case "2" :
$_put_point = 20;
break;
case "3" :
$_put_point = 30;
break;
case "4" :
$_put_point = 40;
break;
case "5" :
$_put_point = 50;
break;
default :
$_put_point = 10;
break;
}
insert_point($member[mb_id], $_put_point, "$_entry 추천", $_en[0], $_en[1], '추천');
} // 여기까지 포인트 지급

이렇게하면 추천하는 사람한테 포인트가 가버리더라구요~

게시물을 작성한사람한테로 추천 단계에따라 포인트를 보낼려면 어떻게해야하나요?
BlogIcon MintState | 2009/03/12 15:57 | PERMALINK | EDIT/DEL
$_en = explode("-",$_POST[entry]);
$sql = " select mb_id from $g4[write_prefix]$_en[0] where wr_id='$_en[1]' ";
$post_row = sql_fetch($sql);
if($post_row[mb_id] == $member[mb_id]) {
echo 'your_post'; exit;
}

$sql = " select count(rate_id) as cnt from $Mint[DB_rate] where rate_idx='$_entry' and ( mb_id='$member[mb_id]' or rate_ip='$_SERVER[REMOTE_ADDR]' ) ";
$row = sql_fetch($sql);

if($row[cnt] > 0) {
echo 'already_voted';
} else {
$sql2 = " insert into $Mint[DB_rate] set rate_idx='$_entry', rate_point='$_rating', mb_id='$member[mb_id]', rate_ip='$_SERVER[REMOTE_ADDR]', rate_wdate=now() ";
$result2 = sql_query($sql2);
$point_total = 0;

$sql3 = " select rate_point from $Mint[DB_rate] where rate_idx='$_entry' order by rate_id asc ";
$result3 = sql_query($sql3);
for ($i=0; $row3=sql_fetch_array($result3); $i++) {
$point_total = $point_total + $row3[rate_point];
}
$_point_percent = (($point_total / $i) / 5) * 100;
$point_percent = sprintf("%d",$_point_percent);


if($post_row[mb_id]) {
switch ($_rating) {
case "1" :
$_put_point = 10;
break;
case "2" :
$_put_point = 20;
break;
case "3" :
$_put_point = 30;
break;
case "4" :
$_put_point = 40;
break;
case "5" :
$_put_point = 50;
break;
default :
$_put_point = 10;
break;
}
insert_point($post_row[mb_id], $_put_point, "$_entry 추천", $_en[0], $_en[1], '추천');
}

echo $point_percent;
}


이렇게 하시면 됩니다.
다음 부터 질문은
http://yesyo.com/mintbbs/ 의 QnA로 올려 주시길 바람니다.
BlogIcon 공부하는자 | 2009/03/12 19:27 | PERMALINK | EDIT/DEL | REPLY
넵^^ 감사합니다! 잘되네요!
| 2009/03/15 08:00 | PERMALINK | EDIT/DEL | REPLY
비밀댓글 입니다
찰스 | 2009/04/18 11:59 | PERMALINK | EDIT/DEL | REPLY
혹시 채팅 방장 정보에 $row[mb_age] 라고 되어있는데..

이거는 별명으로 바꾸고 싶어서 $row[mb_nick]으로 했거든요.. 그런데.. 안되더라구요..

혹시 별명으로 바꾸는법이 있나요?
BlogIcon MintState | 2009/04/21 17:28 | PERMALINK | EDIT/DEL
정확하게 어떻게 바꾸셨는지를 몰라서...
답변을 못해 드리겠네요.. ^^;
음악인 | 2009/04/18 22:44 | PERMALINK | EDIT/DEL | REPLY
채팅을 할때... 한번에 4개의 글이 내려갑니다. 혹시 이것을 방지하는 법은 없나요?
진짜깡통 | 2009/04/21 07:51 | PERMALINK | EDIT/DEL | REPLY
에고 드디어 설치 하여 사용 중인데. .
채팅방이 몇개 오류가 걸리네요..
오류는..
접속자가 제대로 뜨지않는 오류에
글을 적을때 버퍼링이 생기는 오류
채팅방에서 글을 적고 입력을 하면 화면이 멈추는오류
글을 적으면 자주 한번에 같은 글이 4번 반복되는 오류
입퇴장시 알람글이 안뜨거나 중복해서 뜨는 오류

등이 있어요..
후에 라도 수정 해주시면 정말 감사 하겠습니다.. ^^
BlogIcon MintState | 2009/04/21 17:27 | PERMALINK | EDIT/DEL
하~~
윗분하고 같은 문제이군요. 한번에 여러줄이 올라 가는 것..

이건 ajax로 데이터를 받아올때 로딩이 걸려서 그런것 같습니다. 접속자 문제는 처음 듣는데 아마도 비슷한 현상 때문에 그런것 같습니다.
체팅이라는 소스 자체가 많은 자원을 잡아 먹기 때문에 호스팅 업체에서는 설치도 못하게 하죠. 서버도 좋아야 한다는 것입니다. 최상의 상태라면 그런 오류가 안나올텐데 말이죠..

하여간 이런 문제는 동작 스크립트를 보안해야 할 것입니다.
아마도 ajax 스크립트를 바꿔야 할 것 같네요. 제가 사용한것은 가장 기본적인 스크립트여서, 공부용입니다.
그리고 data도 xml 대신 json으로 사용하면 좋을 것 같네요..
ㅎㅎㅎ.. 그러나 추후 업 계획은 없습니다.... 죄송...
| 2009/06/10 02:24 | PERMALINK | EDIT/DEL | REPLY
비밀댓글 입니다
BlogIcon MintState | 2009/06/11 00:28 | PERMALINK | EDIT/DEL
캐릭터셋이 틀려서 그렇습니다.
euc-kr로 업로드 하세요
BlogIcon 푸우 | 2009/07/07 22:38 | PERMALINK | EDIT/DEL | REPLY
혹,, 인원수 20을,, 50명 또는 100명까지 늘릴 수 있나요?
그리구 닉네임을 실명으로 바꾸고 싶은데 가능한지요... 실명제 사이트라, ^^; 잘 사용하고 있는 유저입니다.
BlogIcon MintState | 2009/07/08 11:05 | PERMALINK | EDIT/DEL
인원수는 너무 늘리면 서버에 무리가 갑니다.
인원수는 chat.php 파일의 "최대인원" 으로 검색 하시면 select 폼에서 수정 하시면 됩니다.

실명은 chat_act.php과 chat_room.php 파일에서 $mem_nick = $member[mb_nick]; 부분을 고쳐 주시면 됩니다. $member[mb_name]; 으로..
BlogIcon talkting | 2009/10/21 02:59 | PERMALINK | EDIT/DEL | REPLY
채팅 구현 했습니다.
구현 홈페이지 주소 : http://talk.1sthost.wo.tc/chat.php
고맙습니다. ^^ 잘 사용하겠습니다.
BlogIcon MintState | 2009/10/21 10:49 | PERMALINK | EDIT/DEL
재미있는 사이트네요... 번창하시길..
팝콘 | 2010/01/04 22:51 | PERMALINK | EDIT/DEL | REPLY
안녕하세요^^
어렵게 설치 후에 이용 할 수있을 것 같아 기뻤는데... 몇마디 나누다가 끈기는 현상이 나타나는 이유가 무엇일까요? 그리고 다른 사이트는 괞찬은데 이용하는 사이트 전체가 랙걸린것 같이 되버립니다.
Name
Password
Homepage
Secret