致命错误:在非对象Codeigniter上调用成员函数base_url()

Fatal error: Call to a member function base_url() on a non-object

I am getting the above error when I redirect to the site from payment gateway, hence the head file containing all the scripts does not get loaded

I tried using $ci =& get_instance(); But still its giving the same issue

public function payment_success() { 
    $this->load->model("bidding_m"); 
    $this->load->model("admin_setting_m"); 
    $this->load->model("channel_partners_m"); //call model functions to update the tables 
    $this->load->config('payu_config', TRUE); 
    $this->config = $this->config->item('payu_config'); 
    //echo base_url();
    exit;
}

Your problem is this line:

$this->config = $this->config->item('payu_config');

I don't know if this code is in library / controller so I tried explain it for both:

Controller:

You rewrite whole config ($this->config = ...) with a single config item and your base_url config item is lost! So do it this way:

$config = $this->config->item('payu_config');

Library:

You are accessing config item, but don't have instance of codeigniter. If this code is in library, it should looks like this:

public function payment_success() { 
    $ci = & get_instance();
    $ci->load->model("bidding_m"); 
    $ci->load->model("admin_setting_m"); 
    $ci->load->model("channel_partners_m"); 
    $ci->load->config('payu_config', TRUE); 
    //if you have in this library variable $config
    $this->config = $ci->config->item('payu_config'); 
    echo base_url();
    exit;
}

You could try loading the helper like so

Filename first letterupper case

Somelibraryname.php

<?php

class Somelibraryname  {

  public function __construct() {
    $this->CI =& get_instance();
    $this->CI->load->helper('url');
  }

  public function something() {
    echo base_url();

    // Or

    echo $this->CI->config->item('base_url');
  } 

}