Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用codeigniter的下拉列表中没有值_Php_Codeigniter - Fatal编程技术网

Php 使用codeigniter的下拉列表中没有值

Php 使用codeigniter的下拉列表中没有值,php,codeigniter,Php,Codeigniter,在下面的codeigniter代码中,我放置了控制器、模型、视图。有一个表名成员和一个列名college\u name。我的目标是从会员表中删除college_name的值,并验证它。请帮助我这样做。我尝试过,但下拉列表中没有值。 控制器: function validate_credentials() { $this->load->model('membership_model'); $query = $this->mem

在下面的codeigniter代码中,我放置了控制器、模型、视图。有一个表名成员和一个列名college\u name。我的目标是从会员表中删除college_name的值,并验证它。请帮助我这样做。我尝试过,但下拉列表中没有值。 控制器:

function validate_credentials()
    {       
        $this->load->model('membership_model');
        $query = $this->membership_model->validate($select);

        if($query) // if the user's credentials validated...
        {
            $data = array(
                'username' => $this->input->post('username'),
                'is_logged_in' => true
            );
            if($query->num_rows()>0){
             $status = $query->row()->account_status;}
            else {
             $status = ''; }
             //Account active
            if($status == 'active')
            {
               $this->session->set_userdata($data);
               redirect('site1/members_area');
            }
            else  if ($status == 'inactive')//Account In active
            {  $this->inactive();
              }
              else // incorrect username or password
        {
            $this->invalid();
        }
        }

    }   
型号:

function validate($select)
    {
        $this->db->where('username', $this->input->post('username'));
        $this->db->where('password', md5($this->input->post('password')));
         $select = array();
        $this->db->select('college_name');
    $this->db->from('college_name');
        $query = $this->db->get('membership');
        if ($query->num_rows() > 0) {
        foreach ($query->result_array() as $row) {
            $select[] = $row;
        }
    }

        return $query;

    }
视图:


在您的模型中,您必须返回$select而不是$query。 您的方法可以如下所示:

function validate()
{
    $results = $this->db
        ->select('college_name')
        ->where('username', $this->input->post('username'))
        ->where('password', md5($this->input->post('password')))
        ->from('college_name')
        ->get('membership')
        ->result();

    $select = array();
    foreach ($results as $row) 
        $select[] = $row;

    return $select;
}
您不需要在视图中循环槽结果,只需调用:

<?= form_dropdown('name', $select) ?>

<?= form_dropdown('name', $select) ?>