[펄스나인] 실시간 대화(채팅) 쪽지 (2021.02.03) > 그누보드5 스킨

그누보드5 스킨

좋은 댓글과 좋아요는 제작자에게 큰힘이 됩니다.

[펄스나인] 실시간 대화(채팅) 쪽지 (2021.02.03) 정보

회원통합스킨 [펄스나인] 실시간 대화(채팅) 쪽지 (2021.02.03)

첨부파일

대화형쪽지_20200914.zip (18.2K) 813회 다운로드 2020-09-14 01:48:18 포인트 차감10
테스트한 버전5.4.2.8
호환 가능 버전5.4.X.X

본문


그누 5.3 적용방법
@smt4u 님께서 공유해주셨습니다. 감사합니다.
 
// ./extend/user.config.php 파일 아래내용 추가
function get_memo_not_read($mb_id)
{
    global $g5;
    $sql = " SELECT count(*) as cnt FROM {$g5['memo_table']} WHERE me_recv_mb_id = '$mb_id' and me_read_datetime like '0%' ";
    $row = sql_fetch($sql, false);
    return $row['cnt'];
}
 
// ./bbs/ajax.memo.php 파일 (112라인)
// 쪽지 INSERT 쿼리문을 아래 내용으로 변경
$sql = " insert into {$g5['memo_table']} ( me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_memo, me_read_datetime ) values ( '$me_id', '{$recv_mb_id}', '{$send_mb_id}', '".G5_TIME_YMDHIS."', '{$me_memo}', '0000-00-00 00:00:00' ) ";
sql_query($sql);

 

 

2020.09.14 기능추가 및 수정

실시간 수신확인 기능 추가 (대화내용 가져올때 자동실행 / 기본 10초)
/bbs/ajax.memo_read.php 파일추가

memo_form.skin.php 407라인~433라인 check_Read() 함수추가

 

237736610_1600015009.4615.png

대화목록 실시간 새로고침 되도록 처리

memo.skin.php 208라인에 setinterval 주석처리 되어 있습니다.
필요하신분은 주석해제 하시면 됩니다.

이전 대화보기 클릭시 10개씩 보이도록 수정
대화방에서 프로필 사진 클릭시 자기소개(팝업)로 연결 추가
반복단어 입력시 풍선 깨지는 문제 수정

코어파일의 수정을 지양하고 있는관계로 기타 요청하신 편의사항은 작업하지 않았습니다.
스킨의 특성상 별도 코어파일의 수정없이 업로드만으로 사용을 할 수 있어야 된다는 생각 입니다.
양해 부탁드립니다 ^^

 

2020.08.27 수정 memo.skin.php 58라인

대화목록에서 프로필이미지 안나오던 문제 수정
$p_icon = get_member_profile_img($mb['mb_id']);

 

2020.08.26 기능추가 및 수정  style.memo.css,  memo_form.skin.php, memo.skin.php

닉네임 자동검색(10레벨 회원은 검색제외) 추가, 불필요한 클래스 제거.
memo_search.js 파일 추가

 

2020.08.24 수정  style.memo.css

마지막라인 추가 (닉네임 및 메세지 입력 포커스시 라인 생기는 부분 제거)
@우성짱 님 도움주셔서 감사합니다.

 

Ajax를 활용한 실시간 대화형(채팅) 쪽지 스킨 입니다.
우선 배포를 허가해주신 @메이드 님께 감사의 말씀 올립니다.

원본링크 : https://sir.kr/g5_skin/33036

 

혼자 쓰려고 깨작깨작 만들다가

더 좋은 코드가 나오기를 기대하고 업로드 합니다!

 

이걸로 카톡같은 채팅서비스는

꿈꾸지 않으시는것이 바람직합니다. :D

 

 

설치방법
01. /bbs/ 폴더에 ajax.memo.php, ajax.memo_del.php, ajax.memo_read.php 파일 업로드.

02. /skin/member/basic/ 폴더에 나머지파일 업로드

테마 및 모바일버전 별도사용시 해당 폴더 내 02. 동일폴더로 업로드 하시면 됩니다.

스킨폴더 내 원본파일은 반드시 백업을 권장합니다.

 

기능요약

메세지는 10초 마다 자동 갱신. (setInterval, 10000)

갱신 주기는 memo_form.skin.php 파일 마지막 라인의

숫자를 변경하시면 됩니다. setInterval( function() {} 을 삭제하시면 갱신하지 않으며

새로고침 버튼을 넣어두었으니 활용하시면 되겠습니다.

과부하 테스트는 안해봤습니다.

사용자가 많은 사이트는 setInterval( function() {} 을 지우는것을 추천 드립니다.

 

메세지 목록 -------------------

읽지 않은 메세지가 있는 경우 표기

마지막 대화 및 마지막 대화시간 표기

최근 대화를 위로 정렬

닉네임 입력으로 대화상대 추가

메세지가 없는 경우(모두 삭제된 경우) 목록에서도 삭제

닉네임 자동검색 // 2020.08.26 추가

 

메세지 전송/보기 -------------------

보낸 메세지 삭제

메세지가 10개가 넘으면 [이전대화 10개씩 보기] 버튼 활성화

태그를 입력하는 경우 보안상 줄바꿈 외 제거

Shift+Enter 키 입력으로 줄바꿈 가능

신규 대화시 오늘날짜 표기 및 지난대화에서 날짜를 표기 (카톡과 비슷..)

메세지는 10초 마다 자동 갱신 (위 설명 있음)
수신확인 // 2020.09.14 추가 (10초마다 자동 갱신)

 

기타 -------------------

그누 5.4 쪽지알림 카운트 추가

(안읽음 카운트, 안읽었으나 상대방이 삭제했을때 카운트 제거)

크로스브라우징 : 익스11, 엣지, 크롬, 웨일

 

기존 방식과는 다르게 메세지 1개씩 DB로 저장합니다.

모든 스타일은 style.memo.css 에서 수정가능 합니다.

 

혼자서 테스트를 한다고는 했는데 충분한 테스트가 못되었을 수 있으니

충분한 테스트를 거치고 실서비스에 적용 하시는것을 권장 합니다..

피드백은 환영입니다만.. 어려운건 수정이 안될 수 있습니다. ㅎㅎ

 

다시 타오르는 코로나 조심들하세요.

감사합니다.

 

237736610_1598440719.3828.png

 

237736610_1598208449.3025.png

 

237736610_1598208433.9437.png

 

 

추천을 실천해보세요. :D

추천
55

댓글 전체

Fatal error: Uncaught Error: Call to undefined function get_memo_not_read() in /host/home/dohyeon2713/html/theme/ap/mobile/skin/member/basic/memo_form.skin.php:12 Stack trace: #0 /host/home/do62713/html/bbs/memo_form.php(39): include_once() #1 {main} thrown in 

/host/home/do62713/html/theme/ap/mobile/skin/member/basic/memo_form.skin.php on line 12

이런 오류가 뜨네요..ㅠ  흐귝..
혹시 원인 알려주실 수 있나욤...ㅠ
아 5.3 이라 get_memo_not_read 함수가 없어서 그런거같네요..ㅠ.ㅠ
get_memo_not_read 함수를 추가하거나 해당부분을 다 삭제해야 가능할거같습니다..

5.4에서 테스트를 하다보니
해당 함수가 5.3에는 없는걸 이제알았네요 죄송합니다 흨
5.3.3.3버전에서 get_memo_read() 함수를 넣으면 제대로 보이기는 합니다. ( 기존 쪽지보다 반응이 느립니다. ) 쪽지 삭제, 쪽지 보기까지는 되는데, 쪽지 발송은 되지 않네요.
오 ㅎㅎ 테스트 감사합니다 ^^
메세지입력에 포커스갈때 라인생기는건 처리를 해야겠네요
css안에 안넣었나 봅니다 ㅋ

<style>
#chat-message:focus {outline:none !important; border:0px !important;}
</style>


이모지는 몰랐는데
잘되네요 ㅎ

css 마지막라인에 아래것도 추가해주세요 ㅎ
닉네임입력쪽도 빠졌네요 ㅎ

input[type=text]:focus,input[type=password]:focus, textarea:focus,select:focus { outline:none !important; border:0px !important; }
/skin/member/basic/style.memo.css?ver=191202

혹시 뒤에 ?ver= 붙는건 어떻게 수정하면 될까요?

/extend/version.extend.php

이거군요 ㅎㅎ 감사합니다.
대화 추가하기 닉네임 입력 가독성이 조금 떨어지는 것 같아요!

노란색은 괜찮은데, 글자가 흰색이라 처음에는 못찾았어요 ㅎㅎ
대화 추가하기(닉네임입력) 부분에 글자를 넣으면 SIR의 @ 눌러서 닉네임 나와서 선택하는 것도 좋을 것 같아요.

그건 너무 어렵겠죠 ㅠㅠ
더 좋은건 글자 쳤을때 자동 정렬이 되면 더 좋을 것 같습니다.

예를들어 ㅍ 을 넣었을 때 펄스나인이 나온다던가.. 하는 ..
테스트 사이트 추가해봅니다.

그누보드 5.4.2.8 :  https://glad.ml

그누보드 5.4.2.8 + 나리야빌더 : https://n.glad.ml

둘다

test01 / test01

test02 / test02

넣어뒀습니다.

나리야에서는 badge css가 충돌하더라구요.

badge를 badge로 바꾸니 잘 됩니다.

물론 메모폼에서도 수정해줘야겠죠?

아 그리고 badge-primary도 지워주는게 좋습니다.

뒤에 파란 배경이 생기더라구요.
넵 ㅎ 그누 순정에서는 잘 됩니다.

badge-primary badge-pill m-auto tit_ti

그런데 위 속성은 그누 순정에도 없고 올려주신 파일의 css에도 없더라구요.

아마 부트스트랩 속성인거 같은데, 그게 나리야에서는 같은 속성으로 쓰이기 때문에 충돌이 있는 것 같습니다.

그누 순정에서만 쓴다면 없어도 될 것 같아요!
초성 검색은 좀 무리가 있어서
일단 일반검색으로 업데이트 되었습니다.

불필요한 클래스도 제거 되었습니다~

1. 메시지를 입력할때, 받을때 효과음 넣기.
2. 쪽지가 오면 핸드폰에서 카톡하게 울리기

등등의 기능이 있으면 더 좋을꺼 같아요.
응원합니다.
카톡연동은 작업은 가능하나,
카카오 비즈니스 가입이나 기타 부가적인 해야될게 많아서
가이드를 하기가 어렵습니다 ㅎㅎ

효과음 부분은 고려해보겠습니다 ^^
매일 업데이트 하시네요.
방법하나뿌리고갈께요 .
본인 과대화할수없기에 의미없는것으로 보입니다. 본인과의 대화를 막으려고한다면 아래처럼 하세요.
스킨에서
memo_form.skin.php
해당파일 상단
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
이소스 바로밑에 적으면됩니다.

if($member['mb_id'] == $me_recv_mb_id){
alert_close("본인과 대화 할수없습니다.",true);
}
와 능력자분이 드디어..!
아래 부분이 아직 안되었습니다..ㅎ

실시간 수신확인
기본 수신확인 코드는 들어 있고.. (카톡과 비슷하게..ㅎ)
주석 해제하면 바로 쓸 수 있으나 새로고침을 해야만 수신확인 카운트가 사라지기 때문에
이걸 인터벌 돌릴때 반영시키고 싶습니다. ^^

또 가능하다면 대화 목록쪽도
대화방 안에처럼 Ajax로 새로고침 되면 좋을거같구요 ㅎㅎ
https://sir.kr/qa/374212?sfl=mb_id%2C1&lstx=woolaf

인터벌이 1초로 하면 안된다고 하더군요.
3초는 어떨지 모르겠지만..
저는 아예 리액트로 그냥 카카오톡을 다시 만들려고 합니다.
그러면 푸쉬알림까지 해결이 된다고 해서요.

이걸 php로 끝낼 수가 있는건지.. 의문이네요.
그렇죠 매초당 세팅으로 채팅용도로는 절대 부적합합니다 ㅎ
질문 하신대로 동접자 100명 수준이 동시에 쓴다고 가정하면 답안나옵니다..ㅎㅎ
5~10초로 놓고 불러오는 용도로만 쓰셔야합니다.
대화가 엄청 많을 때

이전 대화 불러오기하면 부하가 크지 않을까요?

버튼을 누를 때 이전 20개나 30개 불러오면 좀 나을 것 같기도 합니다.
잘 설치해서 쓰고 있습니다. 감사합니다. 펄스나인님 혹시 전체회원에게 쪽지 보내는 기능도 구현 가능할까요 ㅋㅋ 아 귀찮게 5명 6명 모두 일일이 아이디 찾아 입력해야되고 이게 보통 귀찮은게 아니더군요 ㅎㅎ 이럴바에는 차라리 전체 쪽지 돌리는게 나을듯 싶기도 해서요
전체회원 쪽지발송은 어차피 관리자만 해당되는거니
관리자모드에서 전체회원에게 보내는걸 추천드리고싶네요~
https://sir.kr/g5_plugin/5845
플러그인이 있네요 참고해보세요 ㅎㅎ
좋은 스킨 감사합니다!! ajax.memo.php 91번째줄과 memo_from.php 21번째 줄 관리자가 아니면 조건문이 에러나서 관리자 여도 정보공개를 하지 않으면 채팅이 불가능하게 되어있네용 저는 회원들도 정보공개 안해도 쪽지는 가능하게 할 생각이어서 주석처리 하니 잘됩니다
너무 훌륭하네요 이런 소스 너무너무 감사합니다

이거 영카트용으로도 사용하게 닉네임 클릭시 정보라던가 이런거 볼 수 있게도 할 수 있나요?
좋은말씀 감사합니다.
채팅방에서 프로필사진 클릭시 그누기본으로 있는
자기소개로 연결 정도는 가능할거같네요.

이번주 목록부분 새로고침, 수신확인, 이전대화보기 10개씩
업데이트 예정인데 같이 처리해보겠습니다.
음 다른회원하고 대화를 하는용도여서
주문내역은 다른 회원이 볼 수 없으니 좀 애매한것 같습니다 ㅎ
개인적으로 쓰실거면 프로필 이미지쪽에 $is_admin 조건으로 링크만 추가해주시면 될것 같습니다~
일단은

<a href="/adm/shop_admin/orderlist.php?sel_field=mb_id&search=<?php echo $recv_mb['mb_id'] ?>" target="_blank">회원 주문내역 보기</a>

이렇게 쓰고 있는데 더 좋은 방법은 없겠죠?
음 영카트에서 상담용으로 사용을 하시는거면
채팅방안에 하단이나 상단에 별도 영역을 만들어서
관리자의 경우 간단한 개인정보를 보여주고 클릭하면 연결될 수 있도록 하는게 좋을거같네요 ^^
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa같은 단어나 url입력시 버블이 깨져서
#chat-list  .bubble_recv
#chat-list  .bubble_send


word-break:break-all;

추가해줬습니다.
펄스나인님 이거 여기 플러그인에 올라온 thisgun님 알람에 연동시키려 하는데 memo_update에 있는 hook를 가져다 insert쪽에 수정해서 넣었는데.. Json이라서 그런지 안되는데 혹 방법이 없을까요ㅜㅜ 일단은 저도 더 고민해서 방법을 찾으면 댓을 달도록 하겠습니다..
이게 맞는방법인지는 모르겠지만, 스킨쪽 success에서 다시한번 ajax를 만들어 보내서 hook이 전달되도록 해결했습니다.. 그누 공식프로그램은 아니라서 저한테만 필요한 기능 같기도 합니다

그리고 에러문구 관련해서는 css잡혀 있는게 없는것 같습니다. ex)포인트가 모잘라 쪽지가 안갈때??같은부분이 디자인이 깨져서 나오는것 같습니다
안녕하세요, 감사히 다운 받아 쓰고 있습니다. 제목 '누구'님과 대화하기 에 무조건 텍스트 닉네임이 아니라 지금 현재 적용된 닉네임을 사용하려면 어떻게 해야할까요? 만약 현재 아이콘으로 적용되어있다면 그대로 보일 수 있도록 하고 싶어요~
이미지 첨부는 필요할것 같아서 잠깐 보긴했는데 좀 어렵더라구요. ㅎ
계획은 없지만.. 시도해보려고 보고있는 중입니다 !
아이고 고생이 많으십니다

스킨 같은거에 보면 에디터 가능한 쪽지 이런게 있더라구요

여기서 첨부쪽만 따와서 만들면 조금 수월할까요?
음 에디터는 입력자체를 input에서
에디터로 변경을 해야되서 구조상 좀 안맞을것 같고
에디터의 사진부분만 따오면 좋겠는데
그건 조금 난이도가 높을것 같습니다 ㅠ

버튼클릭으로 파일을 첨부하는것과
이미지를 드래그앤드롭 으로 넣으면 좋을거같네요~
아직 공개된 스킨에는 파일첨부는 없는거같아서
별도로 보고 있습니다 ^^

#chat-header .badge3 {padding:0.2rem; font-size:14px; font-weight:bold; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;color:#fff; line-height: 60px; font-weight: bold;}


font-weight가 2개인 것 같습니다. ㅎㅎ
음 저만 그런지 모르겠지만 사용자가 관리자를 검색하면 리스트에 안나오네요.

닉네임을 입력하고 +를 누르면 채팅창은 잘 뜨고 채팅도 잘 됩니다.

관리자도 리스트에 뜨면 좋을 것 같아요!
관리자는 일부러 검색 안되게 해놨습니다 ㅎ
memo.skin.php 156라인쯤에

if($row['mb_level'] < 10) {
    echo json_encode($row['mb_nick']).",";
}

if문으로 감싼 부분을 아래와같이 제거하시면 되겠습니다.

//if($row['mb_level'] < 10) {
    echo json_encode($row['mb_nick']).",";
//}


이미지와 같이 해당경로에 업로드하고 창은 띄워지는데 보내기를 눌러도 전송이 되질 않습니다.
왜 때문일까요? 무지 쓰고싶은데
음 해결되셨다니 다행입니다만
위 내용만 봐서는 어떤 문제인지 파악을 할수가 없네요 ㅠ
파일의 문제는 아닌거같은데 음,,
너무 좋은데 그누보드 기본알림에서는 쪽지가 와도 반응을 안하네요 그게 제일 아쉽네요^^
https://sir.kr/g5_plugin/6259?sfl=wr_subject%7C%7Cwr_content&stx=%EC%95%8C%EB%A6%BC
5.4의 기본 쪽지카운트는 작동합니다~
링크에있는 플러그인은 따로 확인은 안해봤습니다 ㅠ

위에 댓글에 ifelse 님께서 해당 플러그인 알림처리 되는부분
해결 하셨다고 댓글이 있는데
----------------------------------
스킨쪽 success에서 다시한번 ajax를 만들어 보내서
hook이 전달되도록 해결
----------------------------------
한번 여쭤보셔요!

요즘 좀 바빠져서 짬 나는대로
플러그인 한번 보겠습니다 ^^

즐거운 주말 보내셔요~
플러그인에 classes.php 파일에

1.
memo_update 펑션이 있을겁니다
거기에 $direct_url을
$direct_url = "/".G5_BBS_DIR."/memo_form.php?me_recv_mb_id=".$member['mb_id'];
으로 변경하시구요
(메모보는창 url이 틀려져서)


2. bbs/ajax_memo_after.php파일을 만드세요
<?php
include_once('./_common.php');

$recv_mb_id = $_POST['recv_mb_id'];
$me_id = $_POST['me_id'];
$nickname = get_member($recv_mb_id);
$nick = $nickname['mb_nick'];


$member_list = array('id'=>array(), 'nick'=>array(), 'me_id'=>array());
$member_list['id'][]  = $recv_mb_id;
$member_list['nick'][] = $nick;
$member_list['me_id'][] = $me_id;

run_event('memo_form_update_after', $member_list, $member_list, $member_list);
?>

어차피 hook에서 보면 $member_list 부분만 정확하게 들어가면 되는거라서
대충 만들었습니다..



3. skin쪽에 memo_form.skin.php 파일에

send_message 펑션에

success: function(data) {
  ...
  ..
 chat_refresh();
}

부분을


success: function(data) {
  ...
  ..
$.ajax({
type: "POST",
data: {recv_mb_id:recv_mb_id,me_id:data.me_id},
url: '<?php echo G5_BBS_URL; ?>/ajax.memo_after.php',
success: function(data) {
 chat_refresh();
}
});

으로 다시한번 ajax처리 해서 hook 작동하게 수정했습니다.
function passing_time($me_send_datetime) {
$time_lag = time() - strtotime($me_send_datetime);

if($time_lag < 60) {
$posting_time = "방금";
} else if($time_lag >= 60 and $time_lag < 3600) {
$posting_time = floor($time_lag/60)."분 전";
} else if($time_lag >= 3600 and $time_lag < 86400) {
$posting_time = floor($time_lag/3600)."시간 전";
} else if($time_lag >= 86400 and $time_lag < 2419200) {
$posting_time = floor($time_lag/86400)."일 전";
} else {
$posting_time = date("y-m-d", strtotime($me_send_datetime));
}

return $posting_time;
}
본문에 5.3 적용가능한 내용 올려두었습니다~!
테스트 해보지는 못했고 실제 5.3에 세팅하신 회원분이 올려주신 내용 입니다^^
5.3 버전에서 사용방법이 없을까요?
get_memo_not_read 함수는 추가해서 되는데
발송이 안됩니다.
발송할수 있는 방법이 없을까요?
5.4로 업데이트를 할수 없어 난감 하네요 ㅠ
5.4에서 작업이되어서..
본업 때문에 5.3은 아직 테스트를 못해봤네요 ㅠ
DB로 저장이 되지 않는 경우라면 쪽지가 저장되는 update문의
수정이 필요할것 같기도 합니다.
감사합니다. ^^ 알려 주신대로 해서 원인 찾았습니다.

extend 에 user.config.php 에 아래 처럼 추가하고

function get_memo_not_read($mb_id)
{
    global $g5;

    $sql = " SELECT count(*) as cnt FROM {$g5['memo_table']} WHERE me_recv_mb_id = '$mb_id' and me_read_datetime like '0%' ";
    $row = sql_fetch($sql, false);

    return $row['cnt'];
}

bbs 에 ajax.memo.php 에 쪽지 INSERT 부분을 아래처럼 변경하니 5.3 에서도 정상으로 작도 하네요 ^^

        // 쪽지 INSERT
        $sql = " insert into {$g5['memo_table']} ( me_id, me_recv_mb_id, me_send_mb_id, me_send_datetime, me_memo, me_read_datetime ) values ( '$me_id', '{$recv_mb_id}', '{$send_mb_id}', '".G5_TIME_YMDHIS."', '{$me_memo}', '0000-00-00 00:00:00' ) ";
        sql_query($sql);

스킨 잘 쓰겠습니다. 감사합니다~
펄스나인님의 작성해주신 게시글때문에 많은 도움이 되고있습니다! 감사해요 ㅎㅎ
혹시 첫 화면에 회원가입한 아이디 또는 이름들이 쫙 나열될수있나요?
나열되면 채팅할 사람을 선택 후 1:1로 채팅하게끔요!
네 쿼리문을 통해서 나열을 해줄 수는 있습니다!
별도개발이 필요할것 같고 그누안에서 회원목록 쿼리문 등으로 검색하시면 자료가 있을것 같기도 합니다 ^^
빠른 답변 너무 감사드려요 ㅠㅠ
지금 적용은 했습니다. 다만 웹뷰로 감싸서 문제가 1가지 정도가 있습니다.
1. 상대방을 찾아 1:1채팅을 하면 알림이 오지 않아서 그 사람을 직접찾아 1:1채팅을 하지 않는 이상 모릅니다.
2. 위에 문제를 해결할려면 채팅방목록을 따로 만들어야할까요?
알림을 어떻게 사용하고 계시는지에 따라 다를것 같습니다.
실시간 처리해주는 알림을 사용하고 계시다면
쪽지를 보냈을때 상대방에게 카운트되는 부분에 insert 쿼리를 추가해주셔야 될것 같습니다~
하단에 이미지를 보시면 채팅하기를 눌럿을때 올려주신 채팅방목록이 바로 보일수있도록 하는 방법이있나요?
<a href="<?php echo G5_BBS_URL; ?>/memo.php" class="win_memo">채팅하기</a>

위와 같은형태로 <?php echo G5_BBS_URL; ?>/memo.php 를
사이즈가 고정된 팝업으로 띄워주시면 되겠습니다~
안녕하세요! 너무나 멋진 자료 감사합니다!
적용해보고 이것저것 테스트하는중인데 궁금한점이 있습니다.

제가 A회원이 B회원에게 문의글을 쓰면 B회원에게 쪽지가 가는 시스템을 만들었습니다.
그런데 전달된 게시글 링크에 하이퍼링크가 걸리지 않길래 열심히 만져봤지만 알고보니 단순히 이 쪽지스킨이 하이퍼링크를 지원하지 않는것 같았습니다.
원래 그누 기본 쪽지에서는 하이퍼링크기능이 있는데, 어떻게 하면 이 스킨을 적용한채 링크를 적을때 하이퍼링크로 뜰수 있을까요?
한달사이에 코딩실력에 많은 발전이 있어 자문자답합니다

memo_form.skin.php에

echo $row['me_memo'];

부분을

echo conv_content($row['me_memo'], 0);

로 수정하시면 그누 쪽지와 똑같이 링크가 나와도 하이퍼링크로 자동 변경됩니다.

이걸로 완벽한 대화형 쪽지가 되었습니다!
항상 멋진 자료 감사합니다
이만한 쪽지스킨이 없네요 ㅠ ㅠ
안녕하세요
좋은자료 감사합니다
pc에서는 잘 되는데 모바일에서 대화상대 추가 클릭하면 아무런 반응도 없습니다
혹시 원인 알려주실 수 있나요...ㅠㅠ
정말 매번 드는 생각이지만 펄스나인님은 대단한 분이신거같습니다. 매번 감동이네요. 기프트라도 드리고싶어요 방법을 여쭙니다
별말씀을요.. 과찬이십니다 ㅠ 저 또한 SIR에서 얻어가는게 많으니..
미약하게나마 도움이라도 되시면 그걸로 만족입니다 ^^
메시지 보낼때 가끔 보낸 메시지가 2개로 보이는 증상 오류 수정하신 분 계실까요?
새로고침하면 다시 1개로 보이지만.. 은근히 거슬려서요
사용하다보니 애드센스를 달게 되었습니다.
/skin/member/BS4-Basic/memo_form.skin.php 에서 구글 코드를 넣으니 노출은 잘 됩니다.(나리야빌더)

사이즈를 수정해서
메시지 입력부분.(종이비행기 라인)

아래에다가 코드를 넣고 싶습니다.
/js/common.js 에서 쪽지 보내는 곳 사이즈를 늘려봐도 사이즈가 늘어나지 않아서요.
/skin/member/BS4-Basic/style.memo.css에서 해봐도 안늘어 나더라구요.

사이즈를 늘리고 코드를 삽입하려면 어떻게 해야할까요?

감사합니다.
레이아웃은 모두
overflow:hidden; 과 position:absolute; 를 사용해서 잡아주고있습니다.
메세지 입력 부분 라인은 #chat-footer 로 정의되어있으며
height:60px 로 잡혀있습니다~

해당부분을 수정하시면 될것 같습니다!
사용하다 보니 자꾸 질문이 생기네요.
pc에서 쪽지를 보 냈을 때 모바일에서 pc에서 보낸 쪽지가 안 와 있습니다.
반대로 모바일에서 보낸 쪽지가 pc에서도 안 보여지는데 문제가 뭘까요?
DB는 같은걸 사용을 하는지라.
모바일에도 동일스킨을 사용중이시라면 작동을 해야 정상 입니다~

모바일버전을 따로 이용하고 계시고
그누보드의 쪽지스킨을 사용하시는 거면 insert 구문이 달라서 안보이실 수 있습니다.

수일내로 세팅할일이 있어서 확인한번 해보고 답변 드리겠습니다!
스킨 너무 너무 감사합니다..! 다음과 같이 화면 상에서 메시지를 보내면 DB 서버 자체에는 기록이 남지만 화면에는 대화가 출력되지 않습니다..ㅠㅠ 어디가 문제인지 방향만 좀 알려주시면 감사하겠습니다. 다들 잘 되는데 저만 안되는거 같아서..
현재 확인된 문제는
새로고침이 될 때 마지막 대화를 기점으로 새로 생긴 대화를 불러오는데
대화를 삭제하는 경우 삭제된 대화를 기점으로 불러와져야되지만 안되는 문제가 있습니다.

해당부분은 수정이 필요한상태이고
당분간은 대화삭제버튼을 지우고 쓰셔야 될것 같습니다~

위 문제가 아니라면 콘솔 (F12) 에러를 봐야 정확한 문제를 알 수 있을것 같습니다.

감사합니다.
질문이 있습니다. 회원검색했을때 나오는 위치를 특정 div 안에 넣을수는 없나용..
잘쓰고 있었는데 쪽지를 팝업이 아닌 페이지안에 넣으려고하다보니
아이디를 검색하면 검색하는곳 아래에 떠야하는데 사이트 위쪽에 떠버려서요
아래 탑 부분을 맞췄지만 틀어지는경우가 있어서 특정 div 안에 넣을수 없나해서 여쭤봅니다.

            open: function(){
                $('.ui-autocomplete').css('width', '100%');
                $('.ui-autocomplete').css('top', '360px');
                $('.ui-autocomplete').css('left', '0px');

감사합니다. 이제서야 그누5.3을 벗어나 설치해 봤습니다. ㅎㅎ

아이디 노출을 최소화하기 위해 member 테이블에 mb_str 필드를 만들어 임시 아이디를 넣어 놨습니다. 그래서, 펄스나인님이 공개해 주신 쪽지를 사용하려고 적용했는데요.

memo.skin.php 파일 하단의

var href = "<?php echo G5_BBS_URL; ?>/memo_form.php?me_recv_mb_id="+$i.mb_id;
var new_win = window.open(href, 'win_'+$i.mb_id, 'left=400,top=50,width=450,height=600,scrollbars=1');
                    new_win.focus();

에서 $i.mb_id 대신에 $i.mb_str 로 수정하니 검색 멤버에게 쪽지 보내는 것은 적용이 잘 되었습니다. 현재 해결 못한 부분이 받은 쪽지를 읽는 부분에서 아이디를 제대로 읽어오지를 못해서요.

아래에서 mb_id 대신에 mb_str 값을 넣어야 하는데, 어떻게 해야 할까요?

var $this = $(this),
$what = $this.closest('[data-mb_id]');
value = $what.data('mb_id');
var href = "./memo_form.php?me_recv_mb_id="+value;

 

펄스나인님이 혹시 이 글을 볼까해서 글 남깁니다.

 

아래와 같이 해결되었습니다...

echo '<li class="memo-chatroom chat-link" data-mb_id="'.$row['me_chat_id'].'">';

이거 대신에 아래와 같이 수정했습니다.

echo '<li class="memo-chatroom chat-link" data-mb_id="'.$mb['mb_str'].'">';

전체 97 |RSS
그누보드5 스킨 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT