0

我需要帮助。我无法在我的多选复选框值中应用WHERE Con​​dition子句。如果我选​​择“accounitng”或“php”,那么我想在这里使用WHERE * ("skill", "php") *这样的条件在这里,技能表字段名称和 php 复选框选择值。如果我选​​择一个类别“PHP”,那么所有“PHP”相关数据只显示。复选框选择值保存到数据库中,用“,”逗号分隔。喜欢php,java,accounting,sql

为了保存我用于模型的数据:

public function saveInstituteOfferCourse($data = array()) {
        if ($this->db->insert('tbl_course_offred', $data)) {
            return $this->db->insert_id();
        }
        return FALSE;
    }

对于我使用的控制器:

public function saveCourses() {
        $data = array();
        $this->load->library('form_validation');
        $this->form_validation->set_rules('skill', 'skill', 'required');
        if ($this->form_validation->run()) {
            /* @var $skill user_admin_controller */
            $skill = implode(',', $this->input->post('skill'));
            $data['skill'] = $skill;
            $data['user_id'] = $this->session->userdata('user_id');
            $this->user_admin_model->saveInstituteOfferCourse($data);
            redirect("user_admin_controller/userAdminPanel");
        }
    }

我的工作流程喜欢:

第一:用户使用多个复选框选择许多技能并将所选数据保存到数据库表中。

第二:如果有人点击php或java等前端页面上的类别,那么只有php或java相关的数据信息/列表显示。

我该如何做到这一点,请帮助我或建议我最好。如果可能的话,请在 codeignitor 中为我提供源代码。

我的申请代码看看,

模型,

public function selectaccoutingins() {
        $this->db->select('*');
        $this->db->select('skill');
        $this->db->from('tbl_user_reg, tbl_course_offred');
        $this->db->where('skill', "php");
        // here, i use two table 1 for information collect and other for category match condition value show.

        $query_result = $this->db->get();
        $result = $query_result->result();
        $result = explode(",", $query_result->result);
        return $result;

    }

控制器,

function accounting_ins_list() {
        $data = array();
        $data['result'] = $this->welcome_model->selectaccoutingins();
        $data['catepage_list'] = $this->load->view('accounting_ins_list', $data, true);
        $this->load->view('hmcate_select_page', $data);
    }

看法,

               <tbody>
                    <?php

                    if($result) {
                    foreach ($result as $aresult) {
                    ?>
                    <tr>
                        <td><?php echo $aresult->institute_name;?></td>
                        <td><?php echo $aresult->contact_person; ?></td>
                        <td><?php echo $aresult->institute_address1;?></td>
                    </tr>
                    <?php } 

                    }   ?>
                </tbody>

在这里我只想显示PHP 相关信息列表。请帮助我如何解决这个问题。

此致,

4

1 回答 1

0

你的意思是,如果你检查php和accounting,它也会出现在你的视图中。?而且您在从两个表中选择数据时遇到问题?

您可以在查询数据中访问本网站 - http://ellislab.com/codeigniter/user-guide/database/active_record.html

我在这里有一个示例查询。

      $query = $this->db->query("SELECT * FROM logsTrans l,transType t 
                                WHERE l.transno = t.transno
                                AND t.transType = '$cat'                                    
                                AND date(l.transDate) >= '$dateF' 
                                AND date(l.transDate) <= '$dateT'");

            return $query->result();

我能看到你想得到的表格和数据吗?此致...

于 2013-05-07T07:28:54.623 回答