팝업 쿠키질문드립니다. (24시간 열람버튼 에러)

팝업 쿠키질문드립니다. (24시간 열람버튼 에러)

QA

팝업 쿠키질문드립니다. (24시간 열람버튼 에러)

답변 1

본문

 

안녕하세요.

팝업창 닫기 버튼은 작동되는데

오늘하루 보지않기 버튼작동이 안됩니다.

Uncaught ReferenceError: set_cookie is not defined 에러가 뜹니다.

도움 부탁드립니다 ㅠㅠ

 

3696014549_1633495560.0089.png

 

 

newwin.inc


<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
 
$sql = " select * from {$g5['new_win_table']}
          where '".G5_TIME_YMDHIS."' between nw_begin_time and nw_end_time
            and nw_device IN ( 'both', 'pc' )
          order by nw_id asc ";
$result = sql_query($sql, false);
?>
 
<!-- 팝업레이어 시작 { -->
<div id="hd_pop">
  <h2>팝업레이어 알림</h2>
  <?php
  for ($i=0; $nw=sql_fetch_array($result); $i++)
  {
    // 이미 체크 되었다면 Continue
    if (isset($_COOKIE["hd_pops_{$nw['nw_id']}"]) && $_COOKIE["hd_pops_{$nw['nw_id']}"])
        continue;
  ?>
  <div id="hd_pops_<?php echo $nw['nw_id'] ?>" class="hd_pops" style="top:<?php echo $nw['nw_top']?>px;left:<?php echo $nw['nw_left']?>px">
    <div class="hd_pops_con" style="width:<?php echo $nw['nw_width'] ?>px;height:<?php echo $nw['nw_height'] ?>px">
      <?php echo conv_content($nw['nw_content'], 1); ?>
    </div>
    <div class="hd_pops_footer">
      <button class="hd_pops_reject hd_pops_<?php echo $nw['nw_id']; ?> <?php echo $nw['nw_disable_hours']; ?>">
        <!-- <strong><?php echo $nw['nw_disable_hours']; ?></strong>시간 동안 다시 열람하지 않습니다.</button> -->
        <strong><?php echo $nw['nw_disable_hours']; ?></strong>오늘하루 보지않기
      </button>
      <button class="hd_pops_close hd_pops_<?php echo $nw['nw_id']; ?>">X</button>
    </div>
  </div>
  <?php }
  if ($i == 0) echo '<span class="sound_only">팝업레이어 알림이 없습니다.</span>';
  ?>
  </div>
 
  <script>
    $(function () {
      $(".hd_pops_reject").click(function () {
        var id = $(this).attr('class').split(' ');
        var ck_name = id[1];
        var exp_time = parseInt(id[2]);
        $("#" + id[1]).css("display", "none");
        set_cookie(ck_name, 1, exp_time, g5_cookie_domain);
      });
      $('.hd_pops_close').click(function () {
        var idb = $(this).attr('class').split(' ');
        $('#' + idb[1]).css('display', 'none');
      });
      $("#hd").css("z-index", 1000);
    });
  </script>
  <!-- } 팝업레이어 끝 -->

 

 

common.js


// 쿠키 입력
function set_cookie(name, value, expirehours, domain) {
  var today = new Date();
  today.setTime(today.getTime() + (60 * 60 * 1000 * expirehours));
  document.cookie = name + "=" + escape(value) + "; path=/; expires=" + today.toGMTString() + ";";
  if (domain) {
    document.cookie += "domain=" + domain + ";";
  }
}
// 쿠키 얻음
function get_cookie(name) {
  var find_sw = false;
  var start, end;
  var i = 0;
 
  for (i = 0; i <= document.cookie.length; i++) {
    start = i;
    end = start + name.length;
 
    if (document.cookie.substring(start, end) == name) {
      find_sw = true
      break
    }
  }
  if (find_sw == true) {
    start = end + 1;
    end = document.cookie.indexOf(";", start);
 
    if (end < start)
      end = document.cookie.length;
 
    return unescape(document.cookie.substring(start, end));
  }
  return "";
}

 

 

head.php


<?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
run_event('pre_head');
include_once(G5_PATH.'/head.sub.php');
?>
<div class="accessbility">
  <a href="#contents">본문 바로가기</a>
</div>
 
<?php
if(defined('_INDEX_')) { 
    include G5_BBS_PATH.'/newwin.inc.php';
}
?>
 
<div id="wrapper">
  <div class="header-block">
    <header class="header">
...

 

 

 

 

이 질문에 댓글 쓰기 :

답변 1

음.. 일단 경로를 root 에서

/js/common.js 이 파일이 있는지 확인 하시고 

head.sub.php에 보면 <script src="..."> 이렇게 된거 많이 보일거에요 경로가 제대로 불러와지는지 확인하셔야되요 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 21
© SIRSOFT
현재 페이지 제일 처음으로