알짜게시판

알짜게시판

운영자가 접속중인 회원에게 1:1 대화 및 채팅방으로 초대

페이지 정보

작성자 오길호 작성일05-04-26 21:59 조회8,269회 댓글5건

본문

잠깐 시간내어 접속중인 사용자와 1:1 대화 또는 채팅방으로 초대를 위한 목적으로

맹글게 되었습니다. 그외 다른 부분에서 응용할수 있을꺼란 생각에 이렇게 글을 남깁니다.

사용된 파일은 그누보드 루트에 있는 index.php 와 접속중인 상황을 알려주는 onair.php 입니다.

참!! 그누보드에 맞춰서 제작되었음을 알려드립니다. 다른 보드라면 수정하여 사용하실수 있을껍니다 ;)

onair.php 는 디폴트로 설치되었던가 아님 제가 그누보드에서 따로 받았는가 기억이 잘 안나네요 ^^;

작동방법은 이렇습니다.

onair.php 에서 쪽지,대화를 원하는 경후 클릭을 하여 /data/memo 또는 /data/invite 에 타켓 ID명의

파일을 생성합니다. 생성된 파일에는 쪽지 또는 대화를 실행해주는 모듈이 저장됩니다.

그리고 생성된 이후 사용자는 페이지 이동시 index.php 를 통해 다 뿌려준후 마지막에 onair에서 생성된

파일의 존재여부를 확인후 있다면 include 시켜 실행시켜줍니다. 그후 해당 파일을 삭제하게 됩니다.

이런 편법을 통해 운영자는 접속중인 사용자에게 무언가의 명령을 보낼수 있게 하였습니다.

참고로 말씀드린 1:1 대화는 현재 개발중인 GChat 을 이용하였고 채팅방은 길호챗 IRC 를 이용하였습니다.




아래의 소스는 index.php 맨 아래부분에 넣었습니다
=================================================================================
// 운영진이 1:1 채팅을 원할경우
if(!$member[mb_id])exit;

if(file_exists("./data/memo/$member[mb_id]"))
{ include"./data/memo/$member[mb_id]"; unlink("./data/memo/$member[mb_id]"); }

// 운영진이 채팅를 원할경우
if(file_exists("./data/invite/$member[mb_id]"))
{ include"./data/invite/$member[mb_id]"; unlink("./data/invite/$member[mb_id]"); }
=================================================================================

아래의 소스는 onair.php 소스중 접속중인 사용자를 출력하는 부분을 수정하였습니다. 29라인
=================================================================================
for ($i=0; $row=mysql_fetch_array($result); $i++) {
$koption = '';
    if ($row[mb_id]) {
        $mb_name = gblayer($row[mb_id], $row[mb_name], $row[mb_email], $row[mb_homepage], $row[mb_open]);

if(file_exists("./data/memo/$row[mb_id]")) $koption .= "<a href=./?doc=user_state.php&chkid=$row[mb_id]&kcmd=1><font color=RED>[쪽지]</font></a> "; else $koption .= "<a href=./?doc=user_state.php&chkid=$row[mb_id]&kcmd=2>[쪽지]</a> ";

if(file_exists("./data/invite/$row[mb_id]")) $koption .= "<a href=./?doc=user_state.php&chkid=$row[mb_id]&kcmd=3><font color=RED>[채팅]</font></a>"; else $koption .= "<a href=./?doc=user_state.php&chkid=$row[mb_id]&kcmd=4>[채팅]</a>";
=================================================================================

아래의 소스는 user_state.php 소스입니다.
=================================================================================
<?
if (!defined("_GNUBOARD_")) exit;

define("_DOCTYPE_", "NONE");

if ($is_admin != 'default') { echo '잘못된 접속!'; exit; }

switch($kcmd)
{
case '1' : $msg="";
unlink("./data/memo/$chkid");
break;
case '2' : $msg="";
    $fd = fopen ("./data/memo/$chkid", "w");
$tempstr = '<? $chkid="'.$chkid.'";';
$tempstr.= '$regdate='.time().';';
$tempstr.= 'if(($regdate+60)>=$time&&$stopplz!="OK"){';
$tempstr.= '?>';
$tempstr.= '<script>';
$tempstr.='if(confirm("관리자가 1:1대화를 요청하고 있습니다.\n\n참석하시겠습니까?")) window.open("http://gchat.kilho.net/mini/?uid=newkilho&nick=<?=$member[mb_name]?>","_gchat","width=400,height=400,menubar=no, scrollbars=no, resizable=no");';
$tempstr.='</script>';
$tempstr.='<? } ?>';
    fwrite($fd, $tempstr);
    fclose ($fd);
break;
case '3' : $msg="";
unlink("./data/invite/$chkid");
break;
case '4' : $msg="";
    $fd = fopen ("./data/invite/$chkid", "w");
$tempstr = '<? $chkid="'.$chkid.'";';
$tempstr.= '$regdate='.time().';';
$tempstr.= 'if(($regdate+60)>=$time&&$stopplz!="OK"){';
$tempstr.= '?>';
$tempstr.= '<script>';
$tempstr.='if(confirm("관리자가 채팅방으로 초대하고 있습니다.\n\n참석하시겠습니까?")) window.open("http://www.kilho.net//?doc=KChatIRC/index.php&mode=room");';
$tempstr.='</script>';
$tempstr.='<? } ?>';
    fwrite($fd, $tempstr);
    fclose ($fd);
break;
}
?>
<script>
<?if($msg){?>alert("<?=$msg?>");<?}?>
location="http://www.kilho.net/?doc=onair.php";
</script>
=================================================================================

댓글목록

김석희님의 댓글

김석희 작성일

예전에 있었는데 지금은 없어졌나봐요,,!
아무리 그누보드전체를 뒤져봐도 나오질 않네요

오길호님의 댓글

오길호 작성일

힘쓰/제가 제로보드를 현재 깔아둔게 없어서 힘드네요 ^^
김석희/ onair.php 라는것은 그누보드3 에 자작게시판인가 그쪽에서 찾아서 하였습니다. 지금 제 소스는 손본게 많아서 따로 올려드릴수가 없습니다. 감사합니다.

김석희님의 댓글

김석희 작성일

onair.php 파일도 같이 올려주세요...

힘쓰님의 댓글

힘쓰 작성일

제로보드용도 부탁드립니다.

연타이님의 댓글

연타이 작성일

제로보드5 용 으로 부탁 드려요..^^*

알짜게시판 목록

알짜게시판 목록
[SimpleChat] HTML 태그 처리 방지 패치 인기글첨부파일
코리아, 09-16, 4451회
워프 무료 SSL 인기글
cshop, 09-10, 3949회
윈도우 용 git 인기글
cshop, 08-31, 3402회
윈도우 8 4만원에 인기글
cshop, 07-04, 4502회
[광고아님] 비용절감 + 기능 + 편리함 = 클라우드 서버 인기글
cshop, 07-02, 3412회
크로스 브라우져 문제 때문에 고생하시는 분들께 드리는 팁 인기글
cshop, 06-29, 3065회
사이트/하위폴더 비밀번호 걸어주는 예제 와 소스 다운받기 인기글
cshop, 06-27, 3229회
사이트 카피하는 복사기들 때문에 골치가 아프신 분들을 위해서 인기글
cshop, 06-26, 3638회
러시아 친구가 알려준 jQuery 컨닝 sheet 인기글
cshop, 06-26, 4023회
js코더들에게 유용한 jsFiddle 과 jsbin 인기글
cshop, 06-26, 4863회
K클리너 비스타 사용가능합니다~ 댓글4 인기글
티호, 03-27, 7219회
[SimpleChat] 저작권 등을 생각해서 일단 지웁니다. 인기글
God뉴3, 02-28, 4227회
[PHP] 파일형 멀티(?) 카운터 인기글
오길호, 08-31, 8433회
오른쪽 마우스 해제 댓글8 인기글
지나가다, 05-11, 23406회
답변글 오른쪽 마우스 해제 댓글1 인기글
키마이라, 08-25, 8961회
공유기 설정 안되시는분들 댓글1 인기글
김광호, 11-18, 8847회
mysql 4.1에서 리스트 화면이 깨질 경우........ 인기글
엔서프트, 10-05, 9180회
SP2 에서 길호챗 사용하기.. 댓글1 인기글
윤준영, 06-28, 8378회
sp2 에서 설치 안되시는분 이렇게 한번 해보세요 댓글1 인기글
돌쇠, 02-20, 9214회
그누보드4 버전과 길호챗P2P 버전 연동 인기글
옙매니아닷컴, 01-25, 10051회
GChat 타이틀 글자 바꾸기 인기글첨부파일
오길호, 12-06, 7201회
IFRAME 사용시 길호챗이 안될경우 인기글
오길호, 11-13, 6370회
SP2 팝업차단 무시하고 팝업띠우기?! 댓글2 인기글
오길호, 07-22, 12213회
XP sp2 ... 대화방 프로그램 설치 해결 방법 인기글
갱미니, 07-19, 7784회
뭐.. 간단히 킴스7에서 설치팁 ... 인기글
한형식, 07-03, 5157회
악성코드 치료 댓글2 인기글
오길호, 05-30, 6613회
운영자가 접속중인 회원에게 1:1 대화 및 채팅방으로 초대 댓글5 인기글
오길호, 04-26, 8270회
그누보드랑 관련되서 연동하는 팁이 소개되있네요. 댓글1 인기글
신세계, 04-26, 5464회
길호넷에서 제공되는 클립 맹글기!! 인기글
오길호, 04-22, 5516회
비밀방 개설시 오류가 생기는경우!!! 댓글3 인기글
오길호, 04-20, 4490회
[펌] HTTP 에러 코드표 인기글관련링크
오길호, 04-20, 9941회
arrow