Exploiting SQLi ActiveRecord class on a vulnerable CodeIgniter version

Im doing a box from vulnhub, found that its running a version of CodeIgniter vulnerable to SQLi. https://www.cvedetails.com/cve/CVE-2015-5725/

Im having troubles exploiting the vuln line on system/database/DB_active_rec.php

    {         $  this->ar_offset = $  offset;         $  this->ar_offset = (int) $  offset;         return $  this;     } 

https://github.com/bcit-ci/CodeIgniter/commit/0dde92def6b9f276f05ff77abb07ead318f9ec23

more or less, i have no idea where to start.

Subir Imagen Con Codeigniter y Ajax – No me carga

estaba siguiendo un curso de codeigniter – pero decidí salirme del camino y cambiar algunas cosas como lo que es agregar ajax al proyecto – entonces mi problema es el siguiente:

Mi facebook : https://www.facebook.com/0101114100d

1- en mi primer proyecto(se recargaba la pagina)si podía guardar mi imagen, pero al cambiar a ajax ya no puedo guardarla y nose por que.

2- quisiera subir 5 imágenes, investigue algo, pero si no soluciono el primero problema, no puedo entrar al otro – ajunto mi codigo. Cabe aclarar que todo es bd

Mi controlador con el que guardo y actualizo

 public function admin_saveproducto($  product_id = null) {     //echo json_encode($  product_id);     if ($  product_id == null) {         //Creamos el producto         $  data['producto'] = $  data['codigoPro'] = $  data['estado'] = $  data['categoria'] =         $  data['moneda'] = $  data['tipoCamb'] = $  data['precioCom'] = $  data['preciVen'] =          $  data['descripcion'] = "";         //Acccion         $  data['title'] = "Registrar Producto";         $  data['boton_title'] = "Registrar";     } else {         // editamos el producto         $  product = $  this->Product->find($  product_id);         $  data['producto'] = $  product->producto;         $  data['codigoPro'] = $  product->codigoPro;         $  data['estado'] = $  product->estado;         $  data['categoria'] = $  product->categoria;         $  data['moneda'] = $  product->moneda;         $  data['tipoCamb'] = $  product->tipoCamb;         $  data['precioCom'] = $  product->precioCom;         $  data['preciVen'] = $  product->preciVen;         $  data['descripcion'] = $  product->descripcion;         $  data['title'] = "Actualizar Producto";         $  data['boton_title'] = "Actualizar";     }     if ($  this->input->post()) {          //El siguiente codigo hace referencia a la importacion validation         //Orden :: nombre del campo :: nombre con el que se muestra el error ::Reglas de validaciones         $  this->form_validation->set_rules('producto', 'Producto', 'required|min_length[4]|max_length[100]');         $  this->form_validation->set_rules('codigo', 'Codigo', 'required|min_length[2]|max_length[20]');         $  this->form_validation->set_rules('estado', 'Estado', 'required');         $  this->form_validation->set_rules('categoria', 'Categoria', 'required');         // $  this->form_validation->set_rules('moneda', 'Moneda', 'required');         $  this->form_validation->set_rules('tipocambio', 'T.Cambio', 'required');         $  this->form_validation->set_rules('preciocompra', 'P.Compra', 'required');         $  this->form_validation->set_rules('precioventa', 'P.Venta', 'required');         //  $  this->form_validation->set_rules('image', 'Imagen', 'required');         $  this->form_validation->set_rules('descripcion', 'Descripcion', 'max_length[500]');         //salvar nuestro post, pero antes verificamos que nuestros datos cumplen con todas las reglas         if ($  this->form_validation->run()) {             //Nuestro form es valido             $  save = array(                 'producto' => $  this->input->post('producto'),                 'codigoPro' => $  this->input->post('codigo'),                 'estado' => $  this->input->post('estado'),                 'categoria' => $  this->input->post('categoria'),                 // 'moneda' => $  this->input->post('moneda'),                 'tipoCamb' => $  this->input->post('tipocambio'),                 'precioCom' => $  this->input->post('preciocompra'),                 'preciVen' => $  this->input->post('precioventa'),                 'descripcion' => $  this->input->post('descripcion'),             );             //Registrar             if ($  product_id == null) {                  if ($  product_id = $  this->Product->insert($  save)) {                     echo json_encode('exito-insert');                     //exit;                 } else {                     echo json_encode('error-insert');                     exit;                 }                 //Actualizat             } else {                if($  this->Product->update($  product_id, $  save)){                    echo json_encode("exito-actualizo");                }else{                echo json_encode("exito-no-actualizo");}                // echo json_encode($  this->Product->update($  product_id, $  save));             }             //Cargar Imagen             $  this->upload($  product_id, $  this->input->post('producto'));             // }else{             //                   //echo json_encode('Error al guardar');         } else {             echo json_encode(validation_errors());             exit;         }       } else {         // Llamamos a nuestra funcion(helper) que se encuentra en (helper/Product_helper)         $  data["data_estado"] = estado();         $  data["data_categoria"] = categoria();         $  data["data_moneda"] = moneda();         $  view["body"] = $  this->load->view("admin/admin/saveproduct", $  data, TRUE);         // $  view["body"] hace referencia a la variable contenida en el template body         //esta vista es de contenido de la variable body(admin/template/body) definido en el template siguiente:          $  this->parser->parse("admin/template/body", $  view);     }      //Cargar Imagen  } 

-Aqui la funcion de guardado – y redimensionamiento de la imagen

 private function upload($  product_id, $  product) {      $  image = "image"; //Nombre del input image     //Nuevo metodo     $  product = clean_name($  product);      //Configuracion de carga     $  config['upload_path'] = 'uploads/productos'; //ruta     $  config['file_name'] = $  product; //nombre del archivo     $  config['allowed_types'] = 'gif|jpg|png';     $  config['max_size'] = 5000;     $  config['overwrite'] = TRUE;     /* $  config['max_width']         = 1024;       $  config['max_height']        = 768; */     //cargamos la libreria     $  this->load->library('upload', $  config);      if ($  this->upload->do_upload($  image)) {         //se cargo la imagen         //Datos del upload         $  data = $  this->upload->data();          $  save = array(             'img1' => $  product . $  data["file_ext"]         );         //llamamos a la funcion upload(system/model/) y cargamos la imagen         $  this->Product->update($  product_id, $  save);         //Redimencinar imagenen         $  this->resize_image($  data['full_path'], $  product . $  data["file_ext"]);     } }  //Funcion para Redimencionar Imagen function resize_image($  path_image) {      $  config['image_library'] = 'gd2';     $  config['source_image'] = $  path_image;     $  config['maintain_ratio'] = TRUE;     // $  config['create_thumb']     = FALSE;     $  config['width'] = 500;     $  config['height'] = 500;      $  this->load->library('image_lib', $  config);     $  this->image_lib->resize(); } 

Filtrar Resultados en codeigniter

Muy buenas compañeros, tengo este pequeño problema al querer filtrar resultados, Explico

Al querer filtrar por fecha (todo bien)

Cuando filtro por empleado y sucursal (todo bien)

Cuando filtro por empleado, sucursal y fecha, me arroja todos los resultados sin filtro alguno

Este es mi controlador

function permisos(){         $  this->auth->is_logged_in();         $  data['module'] = 'capturista';         $  data['template'] = 'permisos';         $  data['current'] = "permisos";          $  this->load->model('asistencias_model');         $  this->load->model('incidencias_model');          $  data['valor'] = $  this->obtenerEstado();         $  capturista = isset( $  _POST["capturista1"] ) ? $  _POST["capturista1"] : $  this->session->userdata('user_id');         $  sucursal = isset( $  _POST["sucursal1"] ) ? $  _POST["sucursal1"] : $  this->session->userdata('idSucursal');          if( isset( $  _POST['desde1'] ) && $  _POST['desde1'] != "" ){             $  desde = explode("/", $  this->input->post("desde1"));                                     $  desde = $  desde[2]."-".$  desde[0]."-".$  desde[1];         }else{             //$  desde = "";             $  desde = $  this->session->userdata('desde1') != NULL ? $  this->session->userdata('desde1') : "";         }          if( isset( $  _POST['hasta1'] ) && $  _POST['hasta1'] != "" ){             $  hasta = explode("/", $  this->input->post("hasta1"));                                     $  hasta = $  hasta[2]."-".$  hasta[0]."-".$  hasta[1];         }else{             //$  hasta = "";             $  hasta = $  this->session->userdata('hasta1') != NULL ? $  this->session->userdata('hasta1') : "";         }          $  this->load->model('incidencias_model');          $  data['incidencias'] = $  this->incidencias_model->getIncidencias($  desde, $  hasta, $  capturista, $  sucursal, NULL);         $  data['desde'] = $  desde;         $  data['hasta'] = $  hasta;          $  this->session->set_userdata(array("desde" => $  desde, "hasta" => $  hasta, "capturista"=> $  capturista,"sucursal" => $  sucursal));         //print_r($  data);         //die();          $  this->load->view('template', $  data);            } 

Este es mi modelo

function getIncidencias($  desde = NULL, $  hasta = NULL, $  idUser = NULL, $  idSucursal = NULL, $  idIncidencia = NULL, $  capturista = ""){          $  filter=" idIncidencia IS NOT NULL ";         $  this->cleanEspacio($  idIncidencia) && $  filter.=" AND R.idIncidencia = ".$  this->model->cleanSQL($  idIncidencia);               $  this->cleanEspacio($  idUser) && $  filter.=" AND R.idUsuario = ".$  this->model->cleanSQL($  idUser);              $  this->cleanEspacio($  desde) && $  this->cleanEspacio($  hasta) && $  filter.=' AND R.permisoDesde BETWEEN "'.$  this->model->cleanSQL($  desde).' 00:00:00" AND "'.$  this->model->cleanSQL($  hasta).' 23:59:59" OR R.permisoHasta BETWEEN "'.$  this->model->cleanSQL($  desde).' 00:00:00" AND "'.$  this->model->cleanSQL($  hasta).' 23:59:59"';         $  this->cleanEspacio($  idSucursal) && $  filter.=" AND R.idSucursal = ".$  this->model->cleanSQL($  idSucursal);          $  sql = "SELECT R.idUsuario, R.idIncidencia, R.tipoIncidencia, P.nombre as nombreSucursal, R.permisoDesde, R.permisoHasta, R.observacion, R.fechaPeticion, R.status, R.motivoStatus, I.first_name AS nombreIncidente, I.last_name AS apellidoIncidente, C.first_name AS nombreCubre, C.last_name AS apellidoCubre FROM incidencias_farmax as R INNER JOIN user as I ON (R.idUsuario = I.user_id) INNER JOIN regiones as P ON (R.idSucursal = P.id)  INNER JOIN user AS C ON (R.idUsuarioCubre = C.user_id) WHERE $  filter ORDER BY fechaPeticion DESC ";         //die($  sql);          return $  this->model->query($  sql);        } 

Aun sigo sin entender el porque no me realiza bien el filtro, gracias por la ayuda

CodeIgniter llenar formulario con datos. HTML. PHP

Buenas tardes en mi pagina lo que debo hacer es en base a un id consultar en la base de datos traer los datos y llenar un formulario esto usando CodeIgniter, html y php.
en la siguiente linea en base a un id lo envió al controlador:

<td scope="row"><a href='<?php echo base_url();?>agenda/agendaC/actualizaAgenda/<?php echo $  dato['id'];?>'><img src='<?php echo base_url();?>estilo/images/iconos/editar.png' title='Editar' /></a></td> 

CONTROLLADOR

 public function actualizaAgenda($  id = NULL){       $  this->load->view('layouts/header');     $  this->load->model('loginm'); //llamo al modelo loginm para traer  la funcion Traer datos y poder consultar los datos de usuario     $  nombres['nombre'] = $  this->loginm->TraerDatos($  _SESSION['usuarios']);  //    comprobamos que el usuario exista en la base de datos y la password ingresada sea correcta     $  this->load->view('layouts/menu', $  nombres);     $  this->load->model('agenda/agendaM');    $  this->load->view('layouts/footer'); 

}

en la función del controlador envió el mismo dato al modelo donde hago la consulta en la base da tos y retorno el id que vuelve a otra vista donde entrego el detalle

MODELO:

function traeCausa($  id = NULL) {     $  this->db->where("id", $  id);     $  this->db->limit(1);     return $  this->db->get('causas_informe')->result_array(); } 

Al momento de entregar los datos del controlador a la nueva vista me da null, mi duda es como puedo solucionar esto o como revisar que dato viaja y donde es que se cae la consulta. Saludos

Puede un botón tener dos funciones en codeigniter

quiero que me orienten en codeigniter, la cuestión es que tengo un formulario con un submit y boton de guardar, al dar guardar me redirecciona a una vista de que el registro ha sido completado y los datos guardados correctamente y un botón que genera un pdf con los datos mas importantes. Hasta aquí todo bien, lo que quiero saber es si al momento de dar click en el botón que genera el pdf también el botón tenga la función de que la vista que contiene el mensaje de que los datos se han guardado correctamente cambie a otra pagina para que la persona que hizo el registro no vuelva a generar el pdf

1 hour customization to PHP | CodeIgniter | Yii Laravel | WordPress | Phalcon for $20

What you get with this offer I will do any coding task related to PHP per hour. Homework should be related to my skill set. Discuss your homework before buying my Hourly. My skills are as follows: – PHP programming – Development of web applications based on CodeIgniter, Laravel, Phalcon & Yii – WordPress development – Development based on Smarty Template Engine – Development of AngularJS, NodeJS, Jquery and javascript – Development of relaxing APIs. – Schema design based on Mysql (Very good database architecture) I can write very good documented code for your homework. If you have an ongoing project and want to start any task of that project, please discuss it with me. If you are running a project in Core PHP, CodeIgniter, Phalcon, Yii, Laravel and WordPress, I can also correct errors in your project. Along with this, I can also handle minor CSS and HTML problems. I will provide – IDX Integration – MLM script design – Calendar integration – Integration API as payment gateway, Google API, iridise API and many more – New development or customization or correction of errors in the complement – Development of HTML to WordPress themes – Development of PSD to WordPress themes – Error correction – Implementation of new functions – Elimination of data – AngularJs / NodeJs / Javscript / Jquery bug fixes – Product development – Web development – Support for long-term projects

by: amauris961
Created: —
Category: PHP
Viewed: 146


work in laravel , codeigniter and Core php for $30

I am a hardworking PHP developer having 5+ years of experience and I can develop any kind of web application using PHP and MySQL. I am comfortable in developing web applications using PHP MVC frameworks and I have good hand in CodeIgniter and Laravel and I am very well fit in both. I have learned skills during my jobs at different software houses. What I can do in PHP (Laravel / CodeIgniter): Web development from scratchEcommerce store or online shopERP developmentCRM developmentAccounting applicationn developmentWeb services developmentAPI developmentAPI Integration I use the following latest technology: HTML5, CSS3, Bootstrap, JavaScript, JQuery, AngularJs, Vuejs, ReactJs. PHP, Laravel, Codeigniter Mysqli, sql, sqlite,msql

by: ruhul147
Created: —
Category: PHP
Viewed: 183


Como puedo lograr que en codeigniter me mande todos los datos de mi tabla users

Estoy editando una paguina echa en codeigniter pero al momento de mandar a llamar ciertos campos de mi tabla user, me aparecen como null, esta es mi bd introducir la descripción de la imagen aquí

y solo me aparecen estos campos al mandar a llamarlos con

var_dump($  this->session->all_userdata()) 

y de salida me sale esto

array(10) { ["__ci_last_regenerate"]=> int(1565321532) ["user_id"]=> string(3) "801" ["username"]=> string(14) "Supervisortest" ["first_name"]=> string(14) "SupervisorTest" ["last_name"]=> string(5) "STest" ["user_level"]=> string(2) "69" ["is_logged_in"]=> bool(true) ["ciudad"]=> NULL ["idSucursal"]=> string(2) "28" ["id_empresa"]=> string(1) "3" }  

Tal vez este omitiendo alguna información si es así, haganmelo saber, gracias por la ayuda

Problemas HTML2PDF cargando VIEW template en CODEIGNITER

tengo una libreria HTML2PDF, que de la nada dejo de funcionar, no logra cargar el template, que cargo desde $ this->load->view, se queda cargando la pagina, y no muestra el archivo PDF, se queda asi, hasta que sale el 504 gateway timeout. Aqui esta el codigo en la clase de codeigniter.

    public function gen_pdf($  ID = null){         $  this->createFolder();         $  this->html2pdf->folder('./files/pdfs/');         $  this->html2pdf->filename('test.pdf');         $  this->html2pdf->paper('letter', 'portrait', 'pt', true, 'UTF-8');		         $  data['ticket'] = $  this->modelo_contable->mostrar_ticket_id($  ID); 		$  u_s = $  this->modelo_contable->mostrar_ticket_id($  ID); 		foreach($  u_s as $  user){ 			$  id_u = $  user->id_user; 			$  data['info_u'] = $  this->modelo_contable->usuario_datos_bd_b($  id_u); 			$  this->html2pdf->html(utf8_decode($  this->load->view('layout/template', $  data, true))); 		}         if($  this->html2pdf->create('save'))         {             $  this->show();			         }	     }

Fatal Error: Call to undefined function is_loaded() in… em Codeigniter (Objetivo: PayPal Payouts)

Estou com o seguinte erro:

Fatal error: Uncaught Error: Call to undefined function is_loaded() in C:\xampp\htdocs\englishup\paypal\codeigniter\system\core\Controller.php:73 Stack trace: #0 C:\xampp\htdocs\englishup\paypal_test.php(7): CI_Controller->__construct() #1 {main} thrown in C:\xampp\htdocs\englishup\paypal\codeigniter\system\core\Controller.php on line 73

Sou novato em php e estou usando a framework do Codeigniter e meu objetivo é “printar” os dados (HTTP_HEADERS) em forma de URI, ou qualquer outra coisa que eu consiga visualizar para ver se o teste em Payouts (forma de pagamento em massa do PayPal) foi executado com sucesso e está funcionando. Seguem abaixo os códigos completos, mas a pasta completa vocês podem encontrar em: https://github.com/angelleye/paypal-codeigniter ou vocês podem estar baixando por aqui, que é o código mais completo ainda: https://www.codeigniter.com/download

paypal_test.php (está na pasta raiz /www)

<?php $  system_path =  "paypal/codeigniter/system"; define('BASEPATH', str_replace("\", "/", $  system_path));      //SE EU DESABILITAR ESTA LINHA APARECE A MENSAGEM DE ERRO "No direct script access allowed" include "paypal/codeigniter/system/core/Controller.php";      //SE EU DESABILITAR ESTA LINHA APARECE O ERRO "Fatal error: Class 'CI_Controller' not found in C:\xampp\htdocs\englishup\paypal\codeigniter\application\controllers\paypal\templates\Payouts.php on line 13" include "paypal/codeigniter/application/controllers/paypal/templates/Payouts.php"; $  bd = new Payouts(); $  print =  $  bd->paypal_payout(); var_dump($  print); ?> 

Payouts.php (Este é o arquivo principal onde quero que apareçam os dados do teste. Está em /www/paypal/codeigniter/application/controllers/paypal/templates/)

<?php  /** * paypal payouts example for php * if it makes things easier for you can buy me a coffee @ paypal > mohandez@hotmail.com * * @package            PHP * @subpackage        Libraries * @category        Libraries * @author            AbdAllah Khashaba * @link            https://khashabawy.com */ //include "../../../../system/core/Controller.php";    //This is the CI_Controller class class Payouts extends CI_Controller {     public function paypal_payout(){         /// PayPal Data         $  mode = "sandbox";  // change to "live" or "sandbox"         $  paypal_app = array(             "mode" => "sandbox",             "sandbox"=> array(                 "client_id"=>"AQZynIyzCG4ypt_0WXAptzkpDrKAJJ2QxqnGdvatCLV0tdy0ZfkX9RQzBUhVAMJnSVfcWTHxeuwuujGx", // change                 "secret"=>"EKaeJASyyiC67xm6D-iPk06-J0HxfzgrU1BvFGUunP4hFRdzSd72PgqiWQhDyCHJulxqZxk-26A9L_iQ",  // change                 "endpoints"=>array(                     "oauth2" => "https://api.sandbox.paypal.com/v1/oauth2/token",                     "payout" => "https://api.sandbox.paypal.com/v1/payments/payouts",                 )             ),             "live"=> array(                 "client_id"=>"xx",  // change                 "secret"=>"yy",  // change                 "endpoints"=>array(                     "oauth2" => "https://api.paypal.com/v1/oauth2/token",                     "payout" => "https://api.paypal.com/v1/payments/payouts",                 )             )                     );         $  client_id = $  paypal_app[$  mode]["client_id"];         $  secret = $  paypal_app[$  mode]["secret"];         $  endpoints = $  paypal_app[$  mode]["endpoints"];         ////// PayOut data                         $  PO_id = mt_rand(100000000000000,999999999999999);  //time();  change         $  PO_amount = 8.00; // change         $  batch = array(             "sender_batch_header" => array(                 "sender_batch_id" => $  PO_id,                 "email_subject" => "You have a payout!",                 "email_message" => "You have received a payout! Thanks for using our service!",             ),             "items" => array(                 0 => array(                     "recipient_type" => "EMAIL",                     "amount" => array(                         "value" => $  PO_amount,                         "currency" => "BRL",                     ),                     "note"=> "Thanks for your patronage!",                     "sender_item_id"=> "201403140001",                     "receiver"=> "rogeriobsoares5-buyer@gmail.com",                 )             )         );         $  batch_data = json_encode($  batch);                 /// Starting OAuth          $  this->load->library("curl");                 $  endpoint = $  endpoints["oauth2"];         $  this->curl->create($  endpoint);         $  this->curl->ssl(FALSE);                 $  this->curl->post("grant_type=client_credentials");         $  this->curl->http_header("Accept","application/json");         $  this->curl->http_header("Accept-Language","en_US");         $  this->curl->http_login($  client_id,$  secret,"client_credentials");         $  returned = $  this->curl->execute();                 //$  this->curl->debug();                 unset($  this->curl);         $  result = json_decode($  returned);          ///// getting Access Token                       $  nonce = $  result->nonce;         $  access_token = $  result->access_token;         $  token_type = $  result->token_type;         $  app_id = $  result->app_id;         $  expires_in = $  result->expires_in;         ///// PayOut Processing         $  this->load->library("curl");                 $  endpoint = $  endpoints["payout"];                 $  this->curl->create($  endpoint);         $  this->curl->ssl(FALSE);                 $  this->curl->http_header("Content-Type","application/json");         $  this->curl->http_header("Authorization","Bearer $  access_token");                 $  this->curl->post($  batch_data);         $  this->curl->http_login($  client_id,$  secret,"client_credentials");         $  returned = $  this->curl->execute();                 //$  this->curl->debug();                 unset($  this->curl);         $  result = json_decode($  returned);         if($  result && $  result->batch_header->batch_status == "PENDING" ){             $  links = $  result->links;             $  link = $  links[0];             $  endpoint = $  link->href;             $  this->load->library("curl");                     $  this->curl->create($  endpoint);             $  this->curl->ssl(FALSE);                     $  this->curl->http_header("Content-Type","application/json");             $  this->curl->http_header("Authorization","Bearer $  access_token");                                 $  returned = $  this->curl->execute();                                 $  result = json_decode($  returned);         }         echo "<pre>";                 print_r($  result);         echo "</pre>";         $  index1 = $  this->index();             } } ?> 

Controller.php (está em /www/paypal/codeigniter/system/core/)

<?php /**  * CodeIgniter  *  * An open source application development framework for PHP  *  * This content is released under the MIT License (MIT)  *  * Copyright (c) 2014 - 2019, British Columbia Institute of Technology  *  * Permission is hereby granted, free of charge, to any person obtaining a copy  * of this software and associated documentation files (the "Software"), to deal  * in the Software without restriction, including without limitation the rights  * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell  * copies of the Software, and to permit persons to whom the Software is  * furnished to do so, subject to the following conditions:  *  * The above copyright notice and this permission notice shall be included in  * all copies or substantial portions of the Software.  *  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE  * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,  * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN  * THE SOFTWARE.  *  * @package CodeIgniter  * @author  EllisLab Dev Team  * @copyright   Copyright (c) 2008 - 2014, EllisLab, Inc. (https://ellislab.com/)  * @copyright   Copyright (c) 2014 - 2019, British Columbia Institute of Technology (https://bcit.ca/)  * @license https://opensource.org/licenses/MIT MIT License  * @link    https://codeigniter.com  * @since   Version 1.0.0  * @filesource  */ defined('BASEPATH') OR exit('No direct script access allowed');  /**  * Application Controller Class  *  * This class object is the super class that every library in  * CodeIgniter will be assigned to.  *  * @package     CodeIgniter  * @subpackage  Libraries  * @category    Libraries  * @author      EllisLab Dev Team  * @link        https://codeigniter.com/user_guide/general/controllers.html  */ class CI_Controller {      /**      * Reference to the CI singleton      *      * @var object      */     private static $  instance;      /**      * Class constructor      *      * @return  void      */     public function __construct()     {         self::$  instance =& $  this;          // Assign all the class objects that were instantiated by the         // bootstrap file (CodeIgniter.php) to local class variables         // so that CI can run as one big super object.         foreach (is_loaded() as $  var => $  class)    //O ERRO TÁ AQUI MEUS CAROS, LINHA 73 (is_loaded() não está definida realmente)         {             $  this->$  var =& load_class($  class);         }          $  this->load =& load_class('Loader', 'core');         $  this->load->initialize();         log_message('info', 'Controller Class Initialized');     }      // --------------------------------------------------------------------      /**      * Get the CI singleton      *      * @static      * @return  object      */     public static function &get_instance()     {         return self::$  instance;     }  } ?> 

Fiz uma busca extensiva de cabo a rabo no Google e pelo que vejo, tem muita gente se queixando dos mesmos erros por mim aqui apresentados. Bom, não sei se é pelo fato de eu ser “newbie” em PHP orientado a objetos… Mas como eliminar o erro inicialmente supracitado e fazer a coisa funcionar? Ou será porque o arquivo principal (paypal_test.php) está fora da pasta (/www/paypal/codeigniter/…)? O que vocês acham? Bom já vos disponibilizei todas as ferramentas…