알짜게시판

채팅방에 이모티콘 달기

길호님께서 올린것과는 다른 방식입니다..^^

현제 그누보드용 채팅에 적용한 상태라 그누보드 위주로 설명합니다.
다른 보드 채팅은 경로만 약간 수정하면 되리라 봅니다.

먼저 chat09_emoticon.zip파일을 압축을 풀어서 emo.php파일과 emoticon폴더를
gnu/gnu_chat폴더에 올립니다.

gnu_chat/skin/각스킨폴더/room.php파일을 열어서 아래와 같이 수정..

입력창 : <input type=text name=test autocomplete=off>
</form> ← 이부분 아래에


<table>
  <tr>
    <td>
      <div align=right>
        <input onclick='showEmoticon()' type=checkbox name=Emoticons value='yes'>
        <img src=./emoticon/i_emoticons.gif align=absmiddle border=0>이모티콘
      </div>
    </td>
  </tr>
  <tr>
    <td><? include "../gnu_chat/emo.php"; ?></td>
  </tr>
<table>

<SCRIPT>
// 자동링크 기능....
.....................................................................
.....................................................................
return str.replace(/___---#Done#Src#---___/g, "");

이 줄 다음에


function emoticon_html(str)
 {
str=str.replace("emtc_001","<img src=http://URL/gnu/gnu_chat/emoticon/1.gif width=18 height=18 border=0>",str);
str=str.replace("emtc_002","<img src=http://URL/gnu/gnu_chat/emoticon/2.gif width=18 height=18 border=0>",str);
...
str=str.replace("emtc_105","<img src=http://URL/gnu/gnu_chat/emoticon/105.gif width=18 height=18 border=0>",str);
return str;
}

아래 채팅 출력 부분 원본

// 채팅 출력부분 
function chattext(str,col)
{ 
<?
  if(file_exists('skin/'.$skinname.'/imoticon'))
  {
  $handle=@opendir('skin/'.$skinname.'/imoticon/.');
  while (($file = @readdir($handle))!==false) 
  { $imoticon=str_replace('.gif','',$file);
    if(strpos($file,'.gif')>1)
    {?>
      str=str.replace("<?=$imoticon?>","<img src='imoticon/<?=$file?>'>");
    <?}
  }
  @closedir($handle); 
  }
?>
  str=sw_autolink(str);

  chatview.document.body.insertAdjacentHTML('beforeEnd', '<font color='+col+'>'+str+'</font><br>');
  chatview.document.body.scrollTop=99999999;
}

원본 끝


수정

// 채팅 출력부분 
function chattext(str,col)
{ 
  str=emoticon_html(str);
  str=sw_autolink(str);

  chatview.document.body.insertAdjacentHTML('beforeEnd', '<font color='+col+'>'+str+'</font><br>');
  chatview.document.body.scrollTop=99999999;
}

수정 끝


이모티콘이 많으면 불러오는데 시간이 약간 걸리뿐만 아니라
이모티콘 약간 깨집니다.. 적절한 개수로 짤라서 사용하세요..^^

    • 저도 제로보드에 적용을 해봤는데 방만들기를 하면 계속해서 깨진방이라고 나옵니다.
      수정은 맞게한것 같은데 뭔가 소스수정이 잘못 되었나 봅니다.
      한번 봐주시겠어요?
      제로보드를 사용하고 있고 주소는 <a href=http://miso.najoy.net target=_blank>http://miso.najoy.net</a> 입니다.
      테스트 아이디 ; test  비밀번호 ; test
      부탁좀 드릴께요.
    • 03-11-11
    • 이모티콘이 깨지는 것은 그진 이모티콘 이미지 경로 문제입니다.
      만약 제로보드라면 아래와 같이 URL경로를 적어주면 해결됩니다..^^
      &lt;img src=http://URL/제로보드 폴더명/길호챗 폴더명/emoticon/104.gif width=18 height=18 border=0&gt;",str)
    • 03-11-11
    • 이미지는 안깨지는데 이모티콘을 선택해서 엔터치면 이모티콘이 안먹어요
    • 03-11-10
    • 저는 채팅에 이미지를 올리면 깨져서 나오는데 왜 그러죠?
    • 03-11-10
    • 수고하셨습니다 :)
    • 03-11-05
    • 오옷 감사합니다. 헐랭이님..
    • 03-11-05
    • 제로보드에서의 사용법은 비슷합니다.
      emo.php파일과 emoticon폴더를 채트 폴더안에 업로드 하시고
      include "../gnu_chat/emo.php"; 되는 이경로를
      include "../챗트폴더이름/emo.php"; 이렇게 하구요.
      이미지경로는
      str=str.replace("emtc_097","&lt;img src=http://URL/gnu/gnu_chat/emoticon/97.gif
      이걸전부
      str=str.replace("emtc_022","&lt;img src=/챗트폴더이름/emoticon/22.gif width=18 height=18 border=0&gt;",str);
      이렇게 수정하세요.^^엄청 노가입니다.

      그다음 &lt;/form&gt; &lt;- 이부분 아래에
      홈박스님 스킨중 00 기준
      여기에 테이블블이 시작되면 이상하게 되버리더군요.^^

      전아래처럼하니까 잘되네요^^
      &lt;/form&gt;
      &lt;TR&gt;
      &lt;TD width=12&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_32.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=54&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_33.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=68 COLSPAN=2&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_34.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=100% background="skin/homebox00/images/homebox_chat_35.gif"&gt;&lt;IMG SRC="" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=53&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_36.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=16&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_37.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=16&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_38.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=136&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_39.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;TD width=13&gt;&lt;IMG SRC="skin/homebox00/images/homebox_chat_40.gif" HEIGHT=6&gt;&lt;/TD&gt;
      &lt;/TR&gt;
      &lt;TABLE width="600" BORDER=0 CELLPADDING=0 CELLSPACING=0 align="center"&gt;&lt;!--이모티콘출력시작--&gt;
      &lt;TR&gt;
      &lt;TD align=center&gt;&lt;div align=right&gt;
            &lt;input onclick=&#039;showEmoticon()&#039; type=checkbox name=Emoticons value=&#039;yes&#039;&gt;&lt;img src=./emoticon/i_emoticons.gif align=absmiddle border=0&gt;이모티콘
            &lt;/div&gt;
      &lt;/TD&gt;
      &lt;/TR&gt;
      &lt;TR&gt;
      &lt;TD align=center&gt;&lt;? include "../kchat3/emo.php"; ?&gt;
      &lt;/TD&gt;
      &lt;/TR&gt;
      &lt;table&gt;&lt;!--이모티콘끝--&gt;
      &lt;/TABLE&gt;

      &lt;OBJECT id="KChat" classid="clsid:86A9E0B2-B22C-4EF9-A29C-7870FAD5C072"
    • 03-11-04
    • 제로보드에서 다는법도 알려주세요 이걸로는 당췌 무지한 저로써는 난감합니다. ㅠ.ㅠ[05]
    • 03-11-04

로그인 후 댓글내용을 입력해주세요

제목 글쓴이 조회 날짜
방이 자꾸 깨지는분 2 6,459 12-18
방만들기 때 계속 로그인 하라고 하네요... 3 6,690 12-11
제목읽기중으로 나올때! 강추 1 9,900 12-09
404에러났을때 고치는법! 3 9,005 12-08
현재 강퇴기능상의 문제점.. 3 8,169 12-04
CAB 파일때문에 문제 일때 5,711 11-30
방 깨짐 현상 3 6,781 11-29
길호쳇방에서의 미니돌2.6 작은아바타 나타내기랍니다. 6 7,920 11-28
답변글 [re] 길호쳇방에서의 미니돌2.6 작은아바타 나타내기랍니다. 4 8,064 11-30
챗방에 손님이 들어오면 소리를 나오게하기 9 9,547 11-27
방깨짐이 자주 일어나는분 2 6,882 11-25
이모티 사용자분 참고하세요^^ 3 8,379 11-25
phpMyAdmin 2.5.4 입니다. 11 11,285 11-22
제목에서 멈추는분 이거 받아서 사용 9 8,474 11-22
절대 경로 주소 알아보기 6,965 11-19
사람이 없는데 방이 목록에 남아있는 경우... 3 6,124 11-18
그누보드3.21~22버전 로그인 하라는 메세지 출력 4 8,152 11-16
제로보드 사용자 채팅방에서 남녀 얼굴 나타내기.. 6 9,521 11-15
공지 날리기 두번째 1 7,154 11-14
db에러는 해결^^ ㅡㅡㅋ 302는 뭐여.. 1 6,911 11-14
로그인 후에 하얀화면만 나와요. 6,749 11-14
초간단 이모니콘 적용..... 10 7,978 11-13
새창띠우신분들은... 6,554 11-13
11월01 및 11월08 버젼 메뉴얼 4 6,997 11-12
제로보드및 타보드에서 이모티콘 출력방법(요청에 의하여)^^ 18 9,852 11-11
win2000, win2003 등에서 로그인 메세지로 설치 못하고 계시는분들께 2 6,850 11-10
홈박스님 스킨지정시 방들어 들어가기 멈춤상태.... 7,602 11-10
'마크그림' 과 '이름그림' 모두 보이고 싶을 경우 7 7,790 11-10
OnLoad 충돌시. 제목읽기만 나오고 그대로 멈춘경우 ^^ 9 7,936 11-10
닉네임에 마우스 올리면 아이디 표시하기 4 7,191 11-10
방제목 읽어오기에서 멈출때 6,791 11-08