| 제목 | keep_flashdata 와 form_validation | ||
|---|---|---|---|
| 글쓴이 | 팔랑 | 작성시각 | 2014/07/06 15:49:23 |
|
|
|||
|
쇼핑몰 장바구니 주문서작성에서 세션땜에 죽겠어요 ㅠㅠ 도와주세요 장바구니에서 상품을 선택하고 주문하기로 넘어갈 때 flashdata로 세션을 만들고 넘겨줍니다. (이건 장바구니 테이블의 고유번호)
$this->session->set_flashdata('purchase', array());
다음, 주문서작성에서 flashdata 를 keep 해주고 purchase 세션을 읽어서 주문할 상품을 로드합니다.그리고 form_validation
function purchase() {
$this->session->keep_flashdata('purchase');
$data['item'] = $this->session->flashdata('purchase');
$data['result'] = $this->store_model->get_cart($data['item']);
$this->load->library('form_validation');
if ($this->form_validation->run() == false)
{
// views - 주문서작성폼
}
else
{
//DB입력
$data['post'] = $this->input->post();
$thankyou['traceno'] = $this->store_model->order_insert($data);
if ($thankyou['traceno'])
{
//장바구니삭제
$this->store_model->cart_delete($data['item']); //여기서 $data['item'] 이 사라집니다!
//기타처리...
}
}
}
$this->form_validation->run() 부분에 keep_flashdata 를 넣어봤는데도 안되고요... 뭐가... 잘못됐나요? 세션설정은 다음과 같습니다. $config['sess_cookie_name'] = 'session'; $config['sess_expiration'] = 7200; $config['sess_expire_on_close'] = TRUE; $config['sess_encrypt_cookie'] = TRUE; $config['sess_use_database'] = TRUE; $config['sess_table_name'] = 'cisessions'; $config['sess_match_ip'] = FALSE; $config['sess_match_useragent'] = FALSE; $config['sess_time_to_update'] = 300; |
|||
| 다음글 | View를 구성하는 방법 (1) | ||
| 이전글 | (return) 복귀주소값에 대해 궁금한점이 있습니다. (4) | ||
|
변종원(웅파)
/
2014/07/07 10:29:52 /
추천
0
|
|
팔랑
/
2014/07/08 22:24:09 /
추천
0
답변 감사합니다 ㅠㅠ
도저히 안되서 그냥 set_userdata 하고 지우는 방식으로 바꿨어요 |
그리고 keep 부분은 else 쪽에 넣으시구요.