2014-10-08 65 views
0

這裏是我的控制器profileinfo.php致命錯誤:調用一個成員函數,非對象,笨控制器上

<?php 
class Profileinfo extends CI_Controller { 

    function index() 
    { 

     $this->load->helper(array('form', 'url')); 
     $this->load->model('aluminsert','', TRUE); 
     $this->load->library('form_validation'); 

     $this->form_validation->set_rules('name', 'Name', 'required'); 
     $this->form_validation->set_rules('branch', 'Bramch', 'required'); 
     $this->form_validation->set_rules('academicinterest', 'Academic Interest', 'required'); 
     $this->form_validation->set_rules('internshipdetail', 'Internship Details', 'required'); 
     $this->form_validation->set_rules('interest_hobbies', 'Interest and hobbies', 'required'); 
     $this->form_validation->set_rules('personalblog', 'Personal Blog', 'required'); 
     $this->form_validation->set_rules('facebookprofile', 'Facebook Profile', 'required'); 
     $this->form_validation->set_rules('linkedinprofile', 'Linkedin Profile', 'required'); 
     $this->form_validation->set_rules('homecity', 'Home city', 'required'); 
     $this->form_validation->set_rules('country', 'country', 'required'); 
     $this->form_validation->set_rules('higherdegree', 'Higher Degree', 'required'); 
     $this->form_validation->set_rules('collegeofeducation', 'College of Education', 'required'); 
     $this->form_validation->set_rules('officialemail', 'Official Email', 'required'); 
     $this->form_validation->set_rules('careerinterests', 'Career Interest', 'required'); 
     $this->form_validation->set_rules('presentemployer', 'Present Employer', 'required'); 
     $this->form_validation->set_rules('presentjob', 'Present Job', 'required'); 
     $this->form_validation->set_rules('previousemployer', 'Previous Employee', 'required'); 
     $this->form_validation->set_rules('startupname', 'Startup Name', 'required'); 

     if ($this->form_validation->run() == FALSE) 
     { 
      $this->load->view('alumprofile'); 

     } 
     else 
     { 
      $alumdata = array(
      'Name' => $this->input->post('name'), 
      'Branch' => $this->input->post('branch'), 
      'Academic Interest' => $this->input->post('academicinterest'), 
      'Internship Details' => $this->input->post('internshipdetail'), 
      'Interest and hobbies' => $this->input->post('interest_hobbies'), 
      'personalblog' => $this->input->post('personalblog'), 
      'Facebook profile' => $this->input->post('facebookprofile'), 
      'Linkedin profile' => $this->input->post('linkedinprofile'), 
      'Home city' => $this->input->post('homecity'), 
      'country' => $this->input->post('country'), 
      'Higher Degree' => $this->input->post('higherdegree'), 
      'College of Education' => $this->input->post('collegeofeducation'), 
      'Official Email' => $this->input->post('officialmail'), 
      'Career Interest' => $this->input->post('careerinterests'), 
      'Present Employer' => $this->input->post('presentemployer'), 
      'Present Job' => $this->input->post('presentjob'), 
      'Previous Employee' => $this->input->post('previousemployer'), 
      'Startup Name' => $this->input->post('startupname'), 
      ); 
      // Transfering Data To Model 
      $this->insert->alum_insert($alumdata); 
      $this->load->view('registration_success'); 
     } 
    } 
} 
?> 

,這裏是我的模型aluminsert.php

<?php 
class Aluminsert extends CI_Model{ 
    function __construct() { 
     parent::__construct(); 
    } 
    function alum_insert($alumdata){ 

     $this->db->insert('user_detail', $alumdata); 
    } 
} 
?> 

表單驗證在提交表單後,顯示的錯誤是: 致命錯誤:在第61行的C:\ wamp \ www \ ci \ application \ controllers \ profileinfo.php中的非對象上調用成員函數alum_insert()

+1

型號名稱爲'aluminsert'不'insert'它應該是'$這個 - > alum_insert-> alum_insert($ alumdata);' – 2014-10-08 12:52:09

+1

@karanthakkar幾乎沒有。 '$ this-> aluminsert-> alum_insert($ alumdata)' – 2014-10-08 13:33:22

+0

@MarioCesar是的,我的一個錯字;) – 2014-10-08 15:35:38

回答

-1

在codeigniter中,我們需要加載數據庫。因此,有兩種方法

  1. 您既可自動加載它或
  2. 負載在任何你需要它。

autoload.php,你必須寫下面的行。

$autoload['libraries'] = array('database');

OR

在其他的方式,你也可以加載方式如下: -

$this->load->database();

當然,它會幫助你。

+0

這與這個問題有什麼關係? – 2014-10-28 17:06:51

0

錯誤在於下面的代碼。你正試圖從'insert'類中調用一個方法,在這種情況下,你的模型中不存在這個方法。

$this->insert->alum_insert($alumdata); 
$this->load->view('registration_success'); 

模型被稱爲「Aluminsert」,你正在使用插入方法被稱爲「alum_insert」所以你應該寧可這樣做。

$this->aluminsert->alum_insert($alumdata); 
$this->load->view('registration_success'); 
相關問題