CI 묻고 답하기

제목 라이브러리에서 session 불러오는법?
글쓴이 슈퍼개미 작성시각 2009/12/28 15:45:06
댓글 : 12 추천 : 0 스크랩 : 0 조회수 : 28552   RSS
    안녕하세요...
   
    저두 common 라이브러리를 만들어application\libraries 에 넣어놓고 사용 중 입니다.
   
    그런데 문제는 controllers 에서 common를 불러와서 사용을하는데 common에서
   
    $this->session->userdata 을 호출하면 오류가 뜹니다.. 어떻게 해야할 까요..
   
    session은 autoload에서 설정을 했습니다. 이렇게는 사용하지 못하나요?
   
    감사합니다.
 다음글 URL을 seqment로 전달하는 방법 (3)
 이전글 [초보]이 소스 어케 가져 오는거에요? (3)

댓글

케이든 / 2009/12/28 15:50:35 / 추천 0
$this->CI =& get_instance();
$this->CI->session->userdata('hi');
오류문도 같이 올려주시면 정확한 답변을 드릴수있습니다.

세션 쿠키문제는 어떻게 되셧나요?

저도 같은 문제가 발생할거같은데 어떻게 해결하셧는지 궁금하네요
헛발이 / 2009/12/28 15:52:32 / 추천 0
앗 그러면 저도 조만간에 그 문제가 발생하겠군요.. ^^;;
헛발이 / 2009/12/28 16:02:06 / 추천 0
방금 찾아 봣는데요.. 혹시 이것이 도움이 되지 않을까요? 안될라나요?

http://blog.veryposi.info/programing/php/codeigniter-memcache-session-php/
슈퍼개미 / 2009/12/28 16:03:54 / 추천 0
ㅎㅎ 관심감사합니다. 쿠키문제는 안티웨어가 작동중이어서 쿠키를 지속적으로 삭제하더군요..
바이러스검사하고 했더니 잘됩니다.......

그리고 오류문은

A PHP Error was encountered

Severity: Notice

Message: Undefined property: CI_Common::$session

Filename: libraries/Common.php

Line Number: 180
입니다.

헛발이 / 2009/12/28 16:05:19 / 추천 0
ㅋㅋㅋ 전또 저 URL페이지 번역하려구 했는데.. 다행이네요 ㅋㅋ
변종원(웅파) / 2009/12/28 16:08:44 / 추천 0
라이브러리안에서 ci의 함수를 호출하시려면 케이든님 답글처럼 하셔야 합니다.

케이든 / 2009/12/28 16:09:15 / 추천 0
됩니다 ^^

저는 문제를 해결해서 ci session을 계속 쓸수있을까~ 해서요 ㅎㅎ
슈퍼개미 / 2009/12/28 16:11:30 / 추천 0
잘되는군요.. 그런데 다른질문...

 function pfn_js_comfirm($msg,$gourl,$backurl){                  
         echo ("
                <script type='text/JavaScript'>
                    msg = confirm('$msg')
                    if(msg)location.href = '$gourl'
                </script>               
               ");
                 
         if(!$backurl)
         {
            $backurl = $_SERVER["HTTP_REFERER"];         
         }
         echo ("
                <script type='text/JavaScript'>
                location.href = '$backurl'  
                </script>
               ");                             
    }

사용은 $this->pfn_js_comfirm('확인 하시겠습니까?','http://localhost','$this->uri->uri_string()');
메시지박스 함수를 만들어서 사용하려고 하는데.... 얼추... 그런데 html이 euckr 로 설정이 되어있어서 그런가 한글이 깨짐니다. utf-8변경하지 않고 안깨지면서 사용하는방법은 없을까요?
변종원(웅파) / 2009/12/28 16:21:13 / 추천 0
아래처럼 각각의 함수에서 삽입하여 쓰시거나
echo ("
<meta http-equiv='content-type' content='text/html; charset=UTF-8' />
<script type='text/JavaScript'>
  msg = confirm('$msg')
  if(msg)location.href = '$gourl'
</script>                
");
각 페이지의 최상단 인클루드에서 메타태그로 utf-8 선언해놓으면 됩니다.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>

슈퍼개미 / 2009/12/28 16:23:15 / 추천 0

EUCKR로는 사용 못하나요? 모든페이지가 EUCKR이라서 DB까지도...

변종원(웅파) / 2009/12/28 16:45:36 / 추천 0
사용하실 수 있습니다만 codeigniter가 기본적으로 utf-8입니다.
codeigniter 파일을 euc-kr로 컨버팅해서 사용하시거나
첫번째 라인처럼 사용하시거나 해야할 것 같습니다.
(제가 euc-kr 환경에서는 사용을 해보지않아서... ^^;
euc-kr 환경에서 utf-8의 ci사용하시는 분 계신가요?
)
슈퍼개미 / 2009/12/28 18:19:00 / 추천 0
답변...감사합니다.