XE 공식 자료실

제작자
srboard
등록일
2014-06-01
다운로드 수
337
링크1
srboard.styx.kr

http://srboard.styx.kr/xe/
위 링크에 사용된 채팅소스입니다.
ajax를 사용하고,
사용자의 계정에 직접 설치해서 사용하는 것입니다.
채팅 데이타는 ./widgets/srchat/chat/ 경로에 저장되기 때문에,
이 디렉토리를 FTP에서 777 또는 707로 권한설정해줘야 합니다.

라이선스
GPL v2
설치경로
./widgets/srchat
최초 등록일
2010-10-24
전체 다운로드
13,616
체험하기

쉬운설치로 바로 체험할 수 있습니다

상세 설명

업로드한 곳 : http://srboard.tistory.com/78

◇◇◇ xe용 위젯 : srchat_XE_219.44.rar
◇◇◇ urlencode : urlencode.rar

◇◇◇ 버튼 아이콘 : buttons-140427.rar


예제 : http://srboard.styx.kr/xe/

◇ 기본적인 설명은 :: http://srboard.styx.kr/srboard/index.php?section=15


<img class="zbxe_widget_output" widget="srchat" skin="default" chtsrchat="영문숫자로채팅방아이디" chthorizon='v' chtwidth="190px" chtheight="30mm" cht_contwh="85mm" cht_usrwh="15mm" cht_wico="1" />

위젯 코드를 붙여넣기 할 때는 - <img> 형식으로 삽입할 때는 -
• chtheight="30mm" :
30%를 지칭하는데,%가 저기에 들어가면, 스킨으로 %라는 기호가 전달이 안됩니다.
그래서, 이것저것 해보다가 mm로 정했습니다.
mm로 전달된 값은 자바스크립트에서 % 로 변환됩니다.

이 문제는 페이지수정에서 위젯코드를 직접 만들 때는 해당되지 않습니다.
<img ~~> 이렇게 생성해서, 붙여넣기 할 때만 문제가 됩니다.

<img class="zbxe_widget_output" widget="srchat" skin="default" chtsrchat="영문숫자로채팅방아이디" />
이렇게 붙여넣기하고, 나머지는 채팅의 관리자기능에서 설정할 수도 있습니다.

설치방법
  • widgets/srchat/chat 폴더의 권한을 FTP에서 777, 또는 707로 줍니다.
  • 이후에 위젯코드를 생성하고,
  • 관리자기능 링크(아이콘)를 열어서, [ install ] 버튼을 누르면 됩니다

  • srchat/chat
  • srchat/emoticon
  • 압축 풀었을 때 이 폴더가 없으면, 새폴더라도 만들고,
  • FTP에서 widgets/srchat/chat 폴더의 권한을 777 또는 707로 주세요.
  • (알집으로 풀면 빈폴더를 복원해내질 않습니다. 유의하세요.)

한글 ajax입력이 안되는 경우엔 urlencode.rar
  • 외국서버에서 한글이 ajax로 입력안되는 경우가 있다고해서 원본의 일부를 수정한 파일입니다.
  • 수정하는 방법은 http://srboard.styx.kr/srboard/index.php?id=free&no=584 덧글에 있는데, 별도로 배포하고 있습니다.
  • 한글입력에 문제가 없으면, 불필요한 부하만 늘어나는 수정입니다.
  • 적용 방법 - 원본을 다운받아서 압축풀고, urlencode.rar를 다운받아서 압축풀어서 원본의 해당파일에 덮어씌웁니다.

혼자 테스트하려면
  • srchat.php 24번 줄
  • $chtip = str_pad(str_replace('.','',$_SERVER['REMOTE_ADDR']),12,'x'); /* ip로 사용자구분 할때 */
  • //$chtip = substr(session_id(),0,12); /* ip로 사용자구분 안할때 */

  • 여기를

  • //$chtip = str_pad(str_replace('.','',$_SERVER['REMOTE_ADDR']),12,'x'); /* ip로 사용자구분 할때 */
  • $chtip = substr(session_id(),0,12); /* ip로 사용자구분 안할때 */

  • 이렇게 수정해야 합니다.

  • 사용자가 어디까지 읽어갔는지가 서버측에 저장되기 때문에,
  • 한 명의 사용자가 두 개의 브라우저로 열면 제대로 작동되지 않습니다.
  • 그래서 혼자 테스트하려면, 브라우저마다 각각의 사용자가 되도록
  • 위와 같이 IP가 아닌 세션아이디로 사용자를 구분하도록 수정해줘야 합니다.

질문은
  • http://srboard.styx.kr/srboard/index.php?id=free 여기서 하시고,
  • 질문에 "XE용 srchat" 에 대한 질문이라고, 특정해주시기 바랍니다. (srchat도 여러가지가 있어서)
  • 알집으로 압축풀면, 빈 폴더(필수적인)가 생성되지 않습니다.. 되도록 다른 압축프로그램을 사용하시길 바랍니다.

• rename을 copy로 수정함.

  • srchat.php 798번줄, 506번줄에
    rename($chtbk,$chtbk."2") 으로 되어 있던 부분을 copy($chtbk,$chtbk."2")로 수정함.

  • srchat.php 789번줄
    if($_GET['xbk']) {
    if(@filesize($chtbk) > 65536) { // '저장된 기록' 이 64kb 보다 크면
    if(copy($chtbk,$chtbk."2")) { // '저장된 기록'을 '저장된 기록2'로 복사하고
    fclose(fopen($chtbk,"w")); // '저장된 기록'을 리셋하고
    if($chtbakbak) { // 여기는 저장된 기록을 영구저장하는 부분.
    $fx = fopen($chtup."_backup_.txt","a");
    $fk = fopen($chtbk."2","r");
    while($fko = fgets($fk)) fputs($fx,$fko);
    fclose($fx);
    fclose($fk);
    }
    }}
    exit;
    }
    • 저장된 기록2을 두는 이유는, 최초 접속할 때 저장된 기록으로 본문을 출력하는데
    • 저장된 기록이 리셋되면, 출력할 게 없어지기 때문에
    • 저장된 기록2을 둬서, 그걸로 출력할 수 있도록 하기 위해서입니다.

    • 이 부분이 rename 이었는데, 이게 뭔가 안정성이 부족한지. 자주 에러를 냈던 거 같습니다.
    • 그니까 저장된 기록이 리셋은 되는데, 저장된 기록의 이름이 저장된 기록2로 바뀌지는 않는 에러.


포럼 0

로그인 후 작성할 수 있습니다.