php - Codeigniter 中特定列字段搜索的实现

标签 php mysql codeigniter

过去几周我的代码中一直存在错误,我尝试了各种方法但无法使其工作,我正在尝试在 codeigniter 中实现特定的列字段搜索功能。这是我的场景,用户登陆年龄,并决定按姓名、成员关系和位置搜索人员列表。这是我的 Controller 、模型和 View ......

型号:

function get_advanced($address2,$partners,$typeofirm){
            echo $address2,$partners,$typeofirm;
            $query = "SELECT firm_id,address2,partners,typeofirm FROM auditfirms WHERE address2 LIKE '%$address2%' OR partners LIKE '%$partners%' OR typeofirm LIKE '%$typeofirm%' ORDER BY 'firm_id' LIMIT 10";
            // return print_r(json_encode($query->result_array()));
            $adv =  $this->db->query($query)->result_array();
            if ($query->num_rows() > 0){
                $row = $query->row_array();             
                echo $query;
                var_dump($adv); die();
                return $adv;
            }
            else{
                echo 'Error at syntax';
            }

Controller

function advanced(){
            $this->load->library('pagination');
            $config['base_url'] = 'http://localhost/icpak/index.php/firms/search';
            $config['total_rows'] = $this->db->get('auditfirms')->num_rows();
            $query1 = $config['per_page'] = 10;
            $query2 = $config['uri_segment'] = 3;
            $config['num_links'] = 5;
            $config['full_tag_open'] = '';
            $config['full_tag_close'] = '';
            $config['cur_tag_open'] = '<span class="current_page">';
            $config['cur_tag_close'] = '</span>';
            $config['anchor_class'] = 'class="btn btn-default" ';               
            $this->pagination->initialize($config);         
            $address2 = $this->input->post('address2');
            $partners = $this->input->post('partners');
            $typeofirm = $this->input->post('typeofirm');

            $data['advanced'] = $this->firms_model->get_advanced($address2,$partners,$typeofirm);
            $this->load->view('index/advanced', $data);
        }

View :是一个模态窗口,窗体位于...

<!--Modal-1-->
            <div class="modal fade" id="myModal-1">
                <div class="modal-dialog">
                    <div class="modal-content">
                        <div class="modal-header">
                            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">X</button>
                            <h3 class="modal-title">Advanced Search</h3>
                        </div>
                        <div class="modal-body" style="padding:0px; margin:0 auto; ">
                            <div class="col-md-12" style="padding:30px !important; margin:0 auto;">
                                <!-- <form id="contactForm" class="contact"> -->
                                <?php echo form_open_multipart('firms/advanced', array('id' => 'contactForm', 'class' => 'contact'));?>
                                    <div class="row">
                                        <div class="form-group">
                                            <label class="col-sm-4 control-label">Location</label>
                                            <div class="col-sm-8">
                                                <input class="form-control mb15" type="input" name="address2" placeholder="Search by Location" aria-controls="firms" />
                                            </div>
                                        </div><br><br>
                                    </div>
                                    <div class="row">
                                        <div class="form-group">
                                            <label class="col-sm-4 control-label">Members</label>
                                            <div class="col-sm-8">
                                                <input class="form-control mb15" type="input" name="partners" placeholder="Search by Member" aria-controls="firms" />
                                            </div>
                                        </div><br><br>
                                    </div>
                                    <div class="row">
                                        <div class="form-group">
                                            <label class="col-sm-4 control-label">Type of Firm</label>
                                            <div class="col-sm-8">
                                                <select class="form-control mb15" name="typeofirm" placeholder="Search by Type of Firm">
                                                    <option value="Auditing">Auditing</option>
                                                    <option value="NULL">Null</option>
                                                </select>
                                            </div>
                                        </div><br><br>
                                    </div>
                                    <div class="row">
                                        <div class="form-group">
                                            <button class="btn btn-primary" id="submit">Submit</button>
                                            <button type="reset" class="btn btn-reset">Reset</button>
                                        </div>
                                    </div>
                                <!-- </form> -->
                                <?php echo form_close();?>
                            </div>
                        </div> <!-- col-md-12 -->
                    </div> <!-- modal-body -->
                </div> <!-- modal content -->
            </div> <!-- modal-dialog -->
        </div> <!-- modal fade -->
        <!--End -Modal-1-->

提前谢谢您...

最佳答案

您的 $query 有问题。请参阅代码中的注释。

function get_advanced($address2,$partners,$typeofirm){
            echo $address2,$partners,$typeofirm;
            $query = "SELECT firm_id,address2,partners,typeofirm FROM auditfirms WHERE address2 LIKE '%$address2%' OR partners LIKE '%$partners%' OR typeofirm LIKE '%$typeofirm%' ORDER BY 'firm_id' LIMIT 10";
            // return print_r(json_encode($query->result_array()));
            $adv =  $this->db->query($query)->result_array(); 
           //  $query is string.. so at this point you must get error.
           // if ($query->num_rows() > 0){
              if (count($adv) > 0){
                // $row variable is unused. but it will give you first record.
                $row = $adv[0];         
                return $adv;
            }
            else{
                echo 'Error at syntax';
            }
 }

关于php - Codeigniter 中特定列字段搜索的实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30954788/

相关文章:

php - Paypal授权抛出: Can not access to this resource

php - 调用未定义函数 simplexml_load_file()

MySQL:连接多个值的总和

php - html 表单中 Mysql 数据库中记录的日期值为 0000-00-00

api - 是否制作以 API 为中心的应用程序? - Laravel

PHP/APACHE : can i auto_prepend to a . js 文件?

php - 为什么 phpunit 在控制台中不显示任何错误

php - 我的sql数据库循环在php中 float ?

php - CodeIgniter:cookie、 session 、重定向太多?

javascript - 如何在 Codeigniter 中禁用 cookie 和缓存