2012-08-12 4 views
0

저는 codeigniter를 처음 사용합니다.CodeIgniter에서 POST 메서드의 값을 기준으로 테이블을 쿼리하는 방법

나는 내보기/check_availability/index.php 파일에 다음 코드가 있습니다

<?php $type = $_POST['type']; ?> 

<a href="/reservation/check_availability/create">Create Reservation</a> 

<?php foreach ($check_availability as $check_availability_item): ?> 

    <h2><?php echo $check_availability_item['room_type'] ?></h2> 
    <div id="main"> 
     <?php echo $check_availability_item['room_description'] ?> 
    </div> 
    <p><a href="check_availability/<?php echo $check_availability_item['id'] ?>">View article</a></p> 

<?php endforeach ?> 

이이 코드에

public function check_availability($type = FALSE) 
{ 
    if ($type === FALSE) 
    { 
     $query = $this->db->get('lf_rooms'); 
     return $query->result_array(); 
    } 

    $query = $this->db->get_where('lf_rooms', array('type' => $type)); 
    return $query->row_array(); 
} 

모델/check_availabiliy_model.php 파일에서 내 코드입니다 내 컨트롤러/check_availability.php 파일

public function index() 
{ 
    $data['check_availability'] = $this->check_availability_model->check_availability(); 
    $data['title'] = 'Available Roooms'; 

    $this->load->view('templates/header', $data); 
    $this->load->view('check_availability/index', $data); 
    $this->load->view('templates/footer'); 
} 

Under views/check_availabilit y/index.php 파일 $ type = $ _POST [ 'type']와 같은 POST 메소드의 값을 기반으로 check_availability 함수를 호출하면 room_type 필드를 필터링하려고합니다.

<?php foreach ($check_availability as $check_availability_item): ?> 

하지만이 어떻게 기능을 check_availability하는 $ 유형 변수의 값을 전달할 수 있습니다

현재이 내가 lf_rooms 테이블에서 모든 기록을 조회하는 데 사용되는 코드는?

답변

1

컨트롤러에 POST 매개 변수를 가져와 데이터베이스를 적절히 쿼리하고 결과를보기에만 표시해야합니다. 뷰는 어떠한 논리도 보유하지 않아야합니다.

public function index() 
{ 
    $type = $this->input->post('type', TRUE); 

    $data['check_availability'] = $this->check_availability_model-> 
            check_availability($type); 
} 
+0

내가 코드를 추적했지만 $ 유형 변수를 디버깅 할 때 값은 거짓입니다. check_availability url을 호출하는이 코드는 다음과 같습니다.

jaypabs

+0

안녕하세요, 매우 유감 스럽지만 당신은 대답이 정확합니다. 내 문제는이 줄로'return $ query-> row_array();'나는이 코드'return $ query-> result_array();'를 사용하기로했다. 고마워요. – jaypabs

관련 문제