2016-01-15 45 views
0

我一直在嘗試加載模型usersModel.php,但我沒有經歷該錯誤的運氣 我檢查了我的代碼十多次,似乎找不到它的錯誤。 在學校,我的代碼正在工作。我認爲這是因爲我在庫中使用了Windows 10操作系統,但是當我回到家並在我的機器上嘗試時,它總是顯示上述錯誤。我似乎無法理解無法找到您在linuxmint中指定錯誤的模型

這裏是我的控制器代碼:

class Login extends CI_Controller{ 
    public function __construct(){ 
      parent::__construct(); 
     }  
    function validate(){ 
     $this->form_validation->set_rules('username', 'Username', 'trim|required|callback_checkuser'); 
     $this->form_validation->set_rules('password', 'Password', 'md5|trim|required'); 
     $x = $this->form_validation->run(); 
     if($x){ 
      if($this->session->userdata('is_logged_in') == 1){ 
       $this->load->model('balancesModel'); 
       $this->balancesModel->b1_update(); 
       $this->balancesModel->b2_update(); 
       $this->balancesModel->b3_update(); 
       redirect((base_url()) . 'admin/tenants'); 
      }else{ 
       redirect((base_url()) . 'main/payments'); 
      } 
     }else{ 
      $x['title'] = "CPMS - Login"; 
      $x['error'] = "incorrect username/password"; 
      $this->load->view('startpage', $x); 
     } 
    } 

    function checkuser(){ 
    $this->load->model('usersModel'); //this part is where the error starts 
     $x = $this->usersModel->get_user(); 
     if($x){ 
      return true; 
     }else{ 
      return false; 
     } 
    } 
} 

這裏是我的usersModel的代碼: 我已經試過很多教程定位模型,但似乎沒有什麼爲我的代碼工作

class UsersModel extends CI_Model{ 
     function get_user(){ 
      $username = $this->input->post('username'); 
      $password = md5($this->input->post('password')); 
      $query = "select * from admin where username='$username' and password='$password'"; 
      $x = $this->db->query($query); 
      if($x){ 
       if($x->num_rows() > 0){ 
        $username = $this->input->post('username'); 
        $data = array(
           'username' => $username, 
           'is_logged_in' => 1 
          ); 
        $this->session->set_userdata($data); 
        return true; 
       } 
      } 
     } 
    } 

我會很感激任何建議,我會解決這個錯誤。 我也想知道在windows和linux操作系統中編寫php代碼是否有區別。

順便說一下,這裏是我得到確切的錯誤: 「無法找到您所指定的模式:usersmodel」

回答

0

其在校期間的工作,因爲Windows機器做精與UsersModel文件名。由於它不區分大小寫。

Codeigniter正在尋找$this->load->model('usersModel');行上的UsersModel,但您的文件名不同。另外,當你在codeigniter中加載模型時,建議使用全部小寫,即使你的類是UsersModel。

Linux區分大小寫。你應該將你的文件名與你的班級名稱相匹配。

+0

當它應該是第一個字母上唯一情況 – user4419336

0

模型類的名字應該是這個樣子

<?php 

class Users_model extends CI_Model { 

} 

和文件名:

User_model.php 

然後裝上控制器

$this->load->model('user_model'); 

$this->user_model->get_some_function(); 
相關問題