제목 | CI 세션 질문 드립니다. | ||
---|---|---|---|
글쓴이 | 꾸숑 | 작성시각 | 2013/02/13 05:48:23 |
|
|||
세션 값이 없을경우 기본값으로 10 으로 할려고 합니다. 일반적인 php는 아래와 같이 하면 오류없이 잘 작동 됩니다. if(!$_SESSION['level'])$_SESSION['level'] = 10; 그러나 CI세션 소스 같은 경우에는 아래의 오류 메세지가 출력 됩니다. al error: Can't use method return value in write context in C:\APM_Setup\htdocs\board_tank\application\controllers\board.php on line 178 선배님들 부탁 드립니다.^^ //글입력 폼 function write_form(){ if(!$this->session->userdata('level'))$this->session->userdata('level')=10; //178줄 if($this->session->userdata('level') > $this->admin_write_level){ alert('글쓰기 권한이 없습니다.'); }else{ $this->load->view('top_view'); $this->board_model->board_admin(); $data['title']='글쓰기'; $this->load->view('write_form_view',$data); $this->load->view('foot_view'); } } |
|||
태그 | 세션,session | ||
다음글 | ci activerecord sql injection ... (1) | ||
이전글 | 모델값을 컨트롤러에 읽는 방법 문의 드립니다. (5) | ||
변종원(웅파)
/
2013/02/13 08:03:55 /
추천
0
level세션은 로그인을 했을때 생성해야합니다.
로그인 안한 경우도 처리하려고 하시는 것 같은데 조건문을 추가하는게 낫습니다.
레벨 값이 없거나 레벨값이 admin_write_level보다 큰 경우로요.
아니면 로그인 체크 먼저하고 로그인되어 있을때 지금 로직을 타야합니다.
|
한대승(불의회상)
/
2013/02/13 08:13:21 /
추천
0
$this->session->userdata('level')=10이 부분이 문제군요. 함수에는 직접 값을 넣을수 없습니다. level 에 10을 집어넣고 싶다면 $this->session->set_userdata('level', 10); |
꾸숑
/
2013/02/13 18:35:55 /
추천
0
웅파// 정확하게 파악하셨네요 로그인 안한경우에 레벨값을 10을 줄려고 합니다. |