2016-04-04 14 views
0

Ben Codeigniter 3.0.4 framework kullanıyorum. MY_input.php olarak adlandırılan giriş sınıfını genişlettim. Bu dosyayı uygulama/çekirdek klasörünün içine yerleştirdim. Bu benim localhost xampp sunucusunda çalışıyor. Ancak, proje sunucumu canlı bir sunucuya dağıttığımda, bu hata çağrısını tanımsız yöntem CI_Input :: load_query() alıyorum. Dosyaları doğru şekilde yükledim ve MY_input.php uygulamasında da canlı sunucudaki uygulama/çekirdek klasörüne sahibim.undefined yöntemine çağrı CI_Input :: load_query()

Hala yerel sunucumda başarıyla çalıştırıyorum ancak bunu canlı olarak yapamıyorum. Burada ilgili kodu yapıştırıyorum.

class MY_input extends CI_Input 
{ 
public function __construct() 
{ 
    parent::__construct(); 

} 
public function save_query($query_array) 
{ 
    $CI =&get_instance(); 
    $CI->db->insert('ci_query',array('query_string'=> http_build_query($query_array))); 
    return $CI->db->insert_id(); 
} 

public function load_query($query_id) 
{ 
    $CI =&get_instance(); 
    $rows = $CI->db->get_where('ci_query', array('id' => $query_id))->result(); 
    if (isset($rows[0])) 
    { 
     parse_str($rows[0]->query_string, $_GET); 
    } 
} 
[![enter image description here][1]][1]} 

Şimdi hata kodu içinde değil ama MY_input.php dosyasını yetiniyorum: Login_controller İçinde i

function displaySorted($query_id = 0,$sortBy = 'DeviceName',$sortOrder = 'asc',$offset=0) 
    { 

     $dataS = $this->session->userdata('logged_in');    
     if(isset($dataS)) 
     { 
      $limit = 20; 
      $data['offset'] = $this->uri->segment(6); 
      $data['query_id']=$query_id; 
      $data['fields'] = array(
       'ID' => 'ID', 
       'DeviceType' => 'Device Type', 
       'RegistrationDateTime' => 'RegistrationDateTime', 
       'LastUpdateDateTime' => 'LastUpdateDateTime', 
       'LastPushNotificationSent' => 'LastPushNotificationSent', 
       'DeviceName' => 'Device Name', 
       'Latitude' => 'Latitude', 
       'Longitude' => 'Longitude', 
       'CityName' => 'CityName', 
       'StateName' => 'StateName', 
       'CountryName' => 'CountryName', 
       'AppVersion' => 'AppVersion', 
       'iOSVersion' => 'iOSVersion', 
       'IPAddress' => 'IPAddress', 
       'TotalCities' => 'TotalCities', 
       'DeviceDID' => 'DeviceDID', 
       'DeviceToken'=> 'DeviceToken', 
       'DeviceLanguageID'=> 'DeviceLanguageID', 
       'LocationID' => 'LocationID', 
       'TempScale' => 'TempScale', 
       'IsFreezeAlertEnabled' => 'IsFreezeAlertEnabled', 
       'ShouldShowTempOnBadge' => 'ShouldShowTempOnBadge', 
       'ShowNegativeAsPositive' => 'ShowNegativeAsPositive', 
       'LastTempC' => 'LastTempC', 
       'LastTempF' => 'LastTempF', 
       'IsDeviceUsingProdCert' => 'IsDeviceUsingProdCert' 
      );    
      $this->input->load_query($query_id); 
      $query_array = array(
       'DeviceName' => $this->input->get('DeviceName'), 
       'RegistrationDateTime' => $this->input->get('RegistrationDateTime'), 
       'LastUpdateDateTime' => $this->input->get('LastUpdateDateTime'), 
       'AppVersion' => $this->input->get('AppVersion'), 
       'iOSVersion' => $this->input->get('iOSVersion'), 
       'DeviceDID' => $this->input->get('DeviceDID'), 
       'DeviceToken' => $this->input->get('DeviceToken') 
      ); 

      $results = $this->user_model->searchSorted($query_array,$limit, $offset, $sortBy, $sortOrder);     
      $data['tableInfo'] = $results['rows']; 
      $data['num_results'] = $results['num_rows']; 
      $data['DeviceName'] =$query_array['DeviceName'];    $data['RegistrationDateTime']=$query_array['RegistrationDateTime']; 
      $data['LastUpdateDateTime']=$query_array['LastUpdateDateTime']; 
      $data['AppVersion']=$query_array['AppVersion']; 
      $data['iOSVersion']=$query_array['iOSVersion']; 
      $data['DeviceDID']=$query_array['DeviceDID']; 
      $data['DeviceToken']=$query_array['DeviceToken']; 
      //pagination functionality 
      $config['base_url'] = site_url("login_controller/displaySorted/$query_id/$sortBy/$sortOrder"); 
      $config['per_page'] = $limit; 
      $config['total_rows'] = $data['num_results']; 
      $this->pagination->initialize($config); 
      $data['pagination'] = $this->pagination->create_links(); 
      $data['sortBy'] = $sortBy; 
      $data['sortOrder'] = $sortOrder;   
      $this->load->view('adminPanel_view', $data); 
    } 
    else 
    { 
     //echo $this->;exit; 
     redirect('login_controller'); 
    } 

} 

Şimdi MY_input.php bu kodu içeren var. Ama ne yapacağımı ve bu sorunu nasıl çözeceğimi bilmiyorum, ayrıca kod yazıcının çekirdek çerçeve dosyalarını değiştirmek istemiyorum. MY_Input.php
ve sınıf adı:

+0

Giriş denetleyicisine MY_input.php'yi dahil ettiniz ..? – Yash

+0

Login_controller'ım içinde load_query() ve save_query() yöntemlerini arıyorum. Ayarlar, bu işlevi uygulama/çekirdek klasöründe otomatik olarak arar. localhost üzerinde çalışıyor ama can simidi –

cevap

İlgili konular