XETOWN

질문/답변

웹에 관련된 질문과 답변을 나눌 수 있습니다.

사람들이 바로 안달려서 그런지 꼭 2번 클릭을 하는지 같은댓글이

2개씩 달리는 경우가 상당히 많습니다.

  • profile
    웹지기 2017.02.03 14:32:14
    기진곰님 애드온 쓰세요. 절대 설정된 시간에 같은 글 등록 안됩니다. 스팸방지 등 다양하게 사용 가능하지만 말씀 하신 기능에도 탁월하죠.
  • profile
    고양이 2017.02.03 14:48:16

    이거 이미 오래전에 깔아두었는데
    제 사이트에는 계속 2개 올라옵니다.

  • profile
    웹지기 2017.02.03 14:52:55
    그럼 설정이 잘못되었거나 회원들이 설정된 시간동안 페이지 반응이 없어도 가만히 있다가 다시 눌러서 그렇습니다. 시간을 더 길게 세팅해 보세요. 저희는 3분 세팅햇습니다. 1,2분은 기다렸다가 다시 누르더라구요.
  • profile
    고양이 2017.02.03 14:54:41
    저는 한시간으로 되어있어요... ㅎㅎ
    이상하게 저는 재현을 하려고 해도안되는데 회원들은 어찌그리 2개씩다는지.. ㅠ
  • profile
    웹지기 2017.02.03 14:58:16
    그럼 한 시간 뒤에 와서 누르는거에요. 등록한 분께 물어보세요.
  • profile
    고양이 2017.02.03 14:59:38

    등록한 시간이.. 한시간이 아닙니다. 같은 분이죠.
    누가 한시간을 기다렸다가 ㅎㅎㅎ
    제 사이트와 호환이나 기타등이 안되어서 다른 해결책을 찾고 있는 겁니다.

     

    생각해보니 익스 하위버전에서 해당문제 생기는지 봐야겠네요.

  • profile
    웹지기 2017.02.03 15:01:13
    깃허브에 문의해보세요. 코드상 불가능할거 같은데 등록자체가...
  • profile
    고양이 2017.02.03 15:19:23 Files첨부 (1)

    ddddd.jpg

     

    제가 발견되는 족족 지워서 잘없는데

    하루에 2~3회정도 이런일이 발생하네요.

     

    코드상에 문제가 없지만 뭔가 서버나 프로그램상의 충돌이나 문제점이 발생하나봅니다.

  • profile
    웹지기 2017.02.03 15:25:36
    저는 애드온 설정에서 실수 게시판을 누락한 경우는 있었는데요. 뭐 설정이나 다 이상없는데 이런 현상이라면 애드온이 고쳐야할 부분이 있는 거겠죠. 문의 해보세요.
  • profile
    웹지기 2017.02.03 14:33:37
    https://www.xpressengine.com/index.php?mid=download&package_id=22753852
  • profile
    기진곰 2017.02.03 15:32:30

    오래 기다리는 경우보다는 너무 빨리 (5초 안에) 등록버튼을 연타했을 때 저런 문제가 생긴다고 알고 있습니다. 첫번째 댓글이 등록 완료되기도 전에 두번째 댓글을 등록하려고 시도하니까, 애드온에서 같은 내용으로 이미 등록된 댓글이 있는지 찾아보려고 해도 안 나오는 거죠.

     

    댓글 등록시 알림 전송 등 처리해야 할 일이 많은 사이트일수록, PHP 기본 세션이 아닌 DB 세션이나 memcached 세션을 사용하는 사이트일수록, 그리고 InnoDB를 사용해서 트랜잭션 처리가 되는 사이트일수록 이런 문제가 심합니다. 트랜잭션이 완료되기 전에는 다른 요청에서 현재 등록중인 댓글을 볼 수 없거든요.

  • profile
    고양이 2017.02.03 15:40:03
    아예 얼럿창으로 댓글이 등록중이므로 잠시만 기다려주세요 라고나오거나
    댓글로 첨부를 하는경우는 잘 없으니 댓글 2번클릭 시 페이지가 새로고침 되면 조금 나을 지도 모르겠네요.
  • profile
    기진곰 2017.02.03 15:41:08
    등록버튼 클릭시 버튼을 disabled 시켜버린 후 setTimeout으로 10초 후에 풀어주는 방법도 있습니다. 댓글 등록 도중 오류가 발생하면 다시 등록해야 하는 경우도 있으니까요.
  • profile
    고양이 2017.02.03 15:43:26
    mysql 이라 inodb와는 상관이 없어보이고 알림센터 빈도같은걸 조정 가능한지 확인 해봐야겠네요.
    감사합니다.
    바쁘시겠지만 문제될만한 요소가 있는지.. 살펴봐 주실수 있으실까요? 주소는 쪽지로 드릴 수 있습니다.
  • profile
    웹지기 2017.02.03 15:42:52

    그럼 저희 처름 한번 클릭 후 10초 정도는 클릭이 안먹게 해 두면 애드온으로 완벽 하겠네요. 밑에 댓글 보고 또 제가 달고 생각해보니 저희 사이트에서는 한번 클릭 후 10초 여유가 있어 절대 등록이 안되는 것 같습니다.

     

    그런데 한번 클릭 후 다시 클릭 안되도록 처리 안한 스킨에서도 빠르게 등록하려고 해도 등록이 안되는거 보면 서버의 처리시간 차이도 영향이 있을 듯 합니다.

  • profile
    웹지기 2017.02.03 15:46:34
    그런데 일반적인 방법으로 테스트 해봐도 두번 등록이 안되는데 어떤 상황에서 등록이 되는걸까요 ㅋ
    저는 이중 등록해보려고 노력해봐도 애드온에서 막히네요. 10초 동안 버튼 먹통 만들지 않은 스킨으로 테스트해도 절대 이중 등록이 안되요 ㅋ
  • profile
    고양이 2017.02.03 15:47:51
    제말이요 ㅎㅎ 아니 일반 회원들이 안좋은 컴퓨터를 쓰는건지 저는 수십번을 해봐도 안되는데.
    일부러 오래된 글 찾아가면 느리게 뜰까봐 그렇게도 해봤는데 재현이 안됩니다. ㅎㅎ 미칠 노릇이네요.

    같은 댓글 3개씩 달리면 괜히 서버자원 아깝다 느껴지더라구요~
  • profile
    웹지기 2017.02.03 15:49:20

    아.. 다시 생각해보니.. 코어에서 3초정도는 블럭을 해버리니.. 3초 이상에서 중복 클릭하면 이전 글 등록이전일 수도 있어 이중 등록 될 듯 합니다.

    저희 처럼 10초 버튼 무력화 이게 답이네요. 저희가 테스트 하는 방법은 3초 이내에 클릭이라 코어에서 막혀요.

     

     

    서버가 조금 느리면서 && 유저가 3,4초 사이 중복 클릭하면 가능성이 많이 잇네요.

     -> 10초 무력화로 시간 더 늘리면 되겠습니다.

  • profile
    기진곰 2017.02.03 15:49:50
    10초간 등록버튼 마비시키는 것이 가장 확실합니다.
  • profile
    웹지기 2017.02.03 15:50:29
    그러네요. 저도 지금 왜 우리 테스트에서 중복등록이 안되었는지 이제 깨달았습니다.
  • profile
    고양이 2017.02.03 15:51:00
    공개된 해당 애드온이 있을까요? ~
  • profile
    웹지기 2017.02.03 15:51:52
    공개된 스크립트가 있습니다. 구글링이나 여기 혹은 XE공홈 검색해 보세요. ㅋㅋ 저도 적용한거 찾아보고 알려드릴테니.. 여기 회원 하늘희님 스크립트 입니다.
  • profile
    웹지기 2017.02.03 15:56:33
    <input type="submit" value="{$lang->cmd_submit}" class="bd_btn fr sone-btn" onclick="return beCheckWrite(this)" />


    등록버튼을 스크립트에 맞춰서 조금 변형하구요. 아래 스크립트는 댓글 등록폼 하단에 넣어주시면 됩니다.
    이게 댓글이니 글 등록도 비슷하게 하시면 됩니다.



    <script>

    function beCheckWrite(obj){

    var delaytime = 10000, // 몇초 후 재활성화 해줄 건지 설정 1000 = 1초
    submingText = '등록중..', // 클릭했을 때 보여줄 멘트..
    ori_text = jQuery(obj).val(),
    checkInput = false;

    //button 인지 submit인지 체크..
    if(!ori_text){
    checkInput = false;
    ori_text = jQuery(obj).text();
    }else{
    checkInput = true;
    }

    //현재 버튼 이름이 submingText와 동일한 경우 전송중으로 판단 전송하지 않음.
    if(ori_text == submingText) return false;

    //우선 비활성화를 한다.
    //obj.disabled=true;

    //기존 멘트를 바꿔준다.
    if(!checkInput){
    jQuery(obj).text(submingText);
    }else{
    jQuery(obj).val(submingText);
    }

    // 설정한 시간이 지나면 다시 활성화
    setTimeout(function(){

    if(checkInput) jQuery(obj).val(ori_text);
    else jQuery(obj).text(ori_text);

    },delaytime);

    return true;

    }

    </script>
  • profile
    고양이 2017.02.03 16:32:25
    등록중 입니다로 바뀌네요~ ㅎㅎ 잘적용 했습니다. 감사합니다.
  • profile
    웹지기 2017.02.03 16:44:57
    저희는 메모게시판 지금 바꾸고 있는데 button 타입은 문제가 있어서 input으로 바꾸고 있습니다. input으로 하셨죠 ?
  • profile
    고양이 2017.02.03 16:56:16
    넵 원래 기존 코드가 input 으로 작성 되어 있네요 ~
  • profile
    웹지기 2017.02.03 16:58:17
    저희는 덕분에 메모게시판 스킨 교체한 이후 적용 안하다가 방금 마무리 했습니다 ㅋ
  • profile
    고양이 2017.02.03 16:59:31
    뭐든 생각난김에 작업하는게 좋죠 ~ 고생하셨습니다.
  • profile
    웹지기 2017.02.03 16:46:33

    그리고 스케치북 스킨 쓰시면 댓글쓰기 대댓글쓰기 댓글수정 모두 하셔야 할겁니다.


List of Articles
번호 제목 글쓴이 날짜
공지 답변을 확실히 받기위한 질문자 지침서 21 람보 2015.12.31
3886 openssl 셋팅할때 인증서는 무료인가요? 1 김병화 2017.02.03
3885 라이믹스 설치시 DB 테이블 생성에 실패 문제 9 file 칼럼 2017.02.03
3884 클라우드플레어 무료 iis 에서는 무료인증서 못쓰나요? 5 우리아기 2017.02.03
» 댓글 쓰기 버튼을 한번만 클릭하게 할 수 없나요? 29 고양이 2017.02.03
3882 알림센터 관리자 알람 설정 시, 알림내역에 아무것도 뜨지 않는 현상 file 김햄C 2017.02.03
3881 브라우저 화면을 gif 로 저장 하는 방법이 궁금합니다. 8 구름이 2017.02.03
3880 누군가 댓글을 달면 댓글수를 컬러로 변경하고 싶습니다. Overachiever 2017.02.03
3879 누리고 쇼핑몰 마일리지 적립금 문제입니다. 꼭 읽어주십쇼(스샷 첨부) 1 김범진 2017.02.02
3878 디버그가 작동이 안되네요. 2 LDEA 2017.02.02
3877 파일업로드 처음보는 에러입니다 2 file LDEA 2017.02.02
3876 원래 p태그가 위아래로 넓게 벌려지나요? 11 라그릿 2017.02.02
3875 {$XE_VALIDATOR_MESSAGE} 메시지 슈퍼캐시 관련 26 웹지기 2017.02.02
3874 라이믹스 게시판->고급설정->목록설정 에러 있으신분 있으신가요? 진영 2017.02.02
3873 회원 정보 추출과 관련된 질문입니다. 5 비밀소년 2017.02.02
3872 이니시스 결제모듈 테스트 키파일 없을까요? 1 Artistudy 2017.02.02
3871 코어 업데이트 시 tar.gz 파일로 서버에 올리는 법 좀 알려주세요.. 3 김범진 2017.02.02
3870 태그를 무조건 사용하게 못하나요? 6 라그릿 2017.02.01
3869 본문 글 일부만 보이게 하는 방법 준쓰 2017.02.01
3868 가끔 에러가 뜹니다 flatmobile 쪽인거 같아요 3 낙타 2017.02.01
3867 뎃글 보기 질문입니다. 1 가이더 2017.02.01
Board Pagination Prev 1 ... 6 7 8 9 10 11 12 13 14 15 ... 205 Next
/ 205
위로
서버에 요청 중입니다. 잠시만 기다려 주십시오...