set_cookie가 안먹히는것 같습니다.
본문
그누보드5 입니다.
웹서핑해서 펼침메뉴를 구했는데 이 메뉴를 닫으면 쿠키저장이 되서 다음에 접속하면 닫힌상태가 되어야 됩니다. 그게 잘 안되네요. 뭐가 더 필요한지 좀 봐주세요..
<script>
function showTopMenu()
{
$('#topSubmenu').toggle();
$('#mclose').toggleClass('bt_mopen');
if($('#topSubmenu').css('display') == "none")
{
set_cookie('topsubmenu','close', 86400 * 31);
}
else
{
set_cookie('topsubmenu','open', 86400 * 31);
}
}
</script>
<ul id="topSubmenu" class="submn" style="display:<?php if (get_cookie("topsubmenu")=="close"){ echo "none";}?>">
메뉴내용 (중략)
</ul>
<p class="tmbtn"><a href="javascript_:showTopMenu()" class="<?php if (get_cookie("topsubmenu")=="close"){ echo "bt_mopen"; } else { echo "bt_mclose";}?>" id=mclose><span>메뉴숨기기</span></a></p>
쿠키가 안굽히는것 같습니다...
답변 2
common.js 파일과 common.lib.php 파일의 get_cookie 함수의 코드를 비교해보시면
아시겠지만 common.js 파일에서는 쿠키의 이름을 입력받은 그대로 저장하는 반면
common.lib.php 파일의 get_cookie 함수는 md5를 이용해 이름을 암호화합니다.
따라서 자바스크립트에서 get_cookie를 이용해 쿠키를 생성했다면 php 의 get_cookie 함수 대신
$_COOKIE 를 사용해야 합니다. get_cookie("topsubmenu") 를 $_COOKIE['topsubmenu'] 로
수정해야합니다.
<script language="JavaScript">
<!--
cookiedata = document.cookie;
if ( cookiedata.indexOf("ncookie=done") < 0 ){
document.getElementById('topsubmenu').style.display = "block";
} else {
document.getElementById('topsubmenu').style.display = "none";
}
-->
</script>
팝업에 사용하던건데 이거 한번 적용해보세요
답변을 작성하시기 전에 로그인 해주세요.