Передать значение с моей точки зрения моей модели

0

Я хочу передать значение из моего представления в мою модель. Я хочу передать значение $ plate моей модели, чтобы получить все данные, которые будут соответствовать табличке $. вот мой код:

Посмотреть

<a href="<?=base_url()?>services/view_services?plate=<?php echo  $plate; ?>">
<button type="button" class="btn btn-primary">View Services</button>

контроллер

public function view_services()
{
    $data['results'] = $this->Services_model->fetch_car_services($config['per_page'], $page);
    $this->load->view('car_services', $data);
}

модель

public function fetch_car_services($plate)
{
    $this->db->where('car_plate_number =', $plate);
    $this->db->order_by('created_datetime', 'DESC');
    $query = $this->db->get('service_jobs');
    $result = $query->result();
    $this->db->save_queries = false;

    return $result;
}  

он, похоже, не работает. Заранее спасибо.

Теги:
codeigniter

2 ответа

1

Вы должны каким-то образом получить переменную, используя свой метод:

//services/view_services?plate=someplate
public function view_services() {
    $plate = $this->input->get('plate');
    if (is_null($plate)) {
        // error!
    }
    $data['results'] = $this->Services_model->fetch_car_services($plate);
    $this->load->view('car_services', $data);
}

лучший способ делать вещи:

//services/view_services/someplate
public function view_services($plate = null) {
    if (is_null($plate)) {
        // error!
    }
    $data['results'] = $this->Services_model->fetch_car_services($plate);
    $this->load->view('car_services', $data);
}

Пожалуйста, проверьте наличие ошибок! Я уже сделал половину работы для вас здесь, вам просто нужно выяснить, как вы хотите справиться с ними. Это также включает проверку, если num_rows > 0 в вашей модели или count($data['results']) > 0 в вашем контроллере и отправка ошибки, если это так. Ваш foreach в вашем представлении не сработает, если вы этого не сделаете.

0

Посмотреть:

 <a href="<?php echo site_url('services/view_services/').$plate; ?>"></a>

контроллер:

 public function view_services($plate)
     {
         $data['results'] = $this->Services_model->fetch_car_services($config['per_page'], $page);

         $this->load->view('car_services', $data);
     }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню