我从第一张表中获取了产品名称

时间:2017-03-27 06:45:13

标签: php database codeigniter-3

我从第一张表中获取了产品名称。我想在点击产品名称时显示哪家公司有此产品。在Codeigniter中显示那些公司列表表2。我不知道怎么做,任何有关此事的建议也会让我感激不尽。或者这在codeigniter中是否可能?我的方式是对还是错?

控制器

这里我从数据库中获取产品名称

@RequestMapping(value = "/insertActivite", method = RequestMethod.POST)
    public ModelAndView insertActivite(@ModelAttribute("activite_formulaire") Pta activite, @RequestParam int ascendant, @RequestParam String structure,
                                        HttpServletRequest request, HttpSession session) {

            Integer pta_code = ptaDao.insert(activite, exerDao.getExerciceEncours().getExerCode(), structure, "", 2, ascendant);

            // trace

            Menu menuEncours = menuDao.getMenuTrace(request.getServletPath());

            menuEncours.setEnv(env);

            String trace_txt = menuEncours.getTrace();

            trace_txt = trace_txt.replace("%s", activite.getLib());

            menuDao.insertTrace(String.valueOf(session.getAttribute("user_code")), menuEncours.getId(), trace_txt);

            // fin trace

            ModelAndView modelView = new ModelAndView("redirect:/elaboration/");

            return modelView;

    }

Here i am getting product names from database 我在这里尝试用户点击产品名称。在下一页中,只显示公司列出哪个公司包含该产品。

模型

function index() {
            $data['items_data'] = $this->Visa_mdl->get_items_name();
            $this->load->view('include/header');
            $this->load->view('visa/visa',$data);
            $this->load->view('include/footer');
        }

视图 我在这里展示产品名称

function get_items_name() {
            $this->db->select('*');
            $query = $this->get_table1();
            return $query->result();

        }

function get_items_company_list($id) {
            $query = $this->db->query('select company_details.company_name, company_details.address, company_details.contact_number from tbl_product right join company_details on tbl_product.item_id = company_details.item_id where tbl_product.item_id = "$id"');

            return  $query->result();
        }

在下一页中,我如何获得公司列表。

<?php
             $data = "";
             foreach($items_data as $row){

                    $data .=  '<li class="list-group-item">
                                <span class="fa fa-angle-double-right pull-right" style=""><p class="pull-left">'.$row->item_id.'</p></span>
                                <a href="'.base_url("Hotels/visa_dashboard").'">'.$row->item_name.'<span class="fa fa-angle-double-right pull-right" style=""></span>        
                                </a>
                            </li>';

                } 
                echo $data;
                ?>

1 个答案:

答案 0 :(得分:1)

考虑到您要在此URL Hotels / visa_dashboard中显示公司列表,您需要将项目ID作为查询字符串传递,或将其作为参数添加到您的方法中。

视图中的示例

<?php
             $data = "";
             foreach($items_data as $row){

                    $data .=  '<li class="list-group-item">
                                <span class="fa fa-angle-double-right pull-right" style=""><p class="pull-left">'.$row->item_id.'</p></span>
                                <a href="'.base_url("Hotels/visa_dashboard/".$row->item_id).'">'.$row->item_name.'<span class="fa fa-angle-double-right pull-right" style=""></span>        
                                </a>
                            </li>';

                } 
                echo $data;
                ?>

在你的功能中

public function visa_dashboard($item_id){

//get the query
$result = $yourmodel->get_items_company_list($item_id);

$data['company_list'] = $result;

$this->load->view(YOUR_TEMPLATE/company_view.php,$data);
}

并在company_view.php中

foreach($items_company_data as $row) {
                      echo $row->company_name;
                      echo $row->contact_number;
                      echo $row->address;

            }