tutorial español ejemplos php codeigniter

php - español - codeigniter tutorial



Error Codeigniter: Llamada a la función no definida mysql_pconnect() (5)

He actualizado mi versión de codeigniter de 2.2.4 paso a paso a 3.0.6 y recibo un error:

An uncaught Exception was encountered Type: Error Message: Call to undefined function mysql_pconnect() Filename: path-to-project/system/database/drivers/mysql/mysql_driver.php Line Number: 135 Backtrace: File: path-to-project/application/controllers/Main.php Line: 10 Function: __construct File: path-to-project/index.php Line: 315 Function: require_once

Acabo de reemplazar mi archivo index.php y el directorio del sistema con el nuevo e hice algunos cambios en mi aplicación de acuerdo con el tutorial.

y este es el controlador principal:

class Main extends CI_Controller { function __construct() { parent::__construct(); $this->load->model(''main_model''); } }

¿Qué causa el problema?

Y este es el enlace del tutorial.


Gracias a Anant

Llego a una conclusión:

Cambié completamente mi antiguo archivo database.php en la carpeta de configuración con el nuevo:

Desde:

$db[''default''][''hostname''] = ''localhost''; $db[''default''][''username''] = ''''; $db[''default''][''password''] = ''''; $db[''default''][''database''] = ''''; $db[''default''][''dbdriver''] = ''''; $db[''default''][''dbprefix''] = ''''; $db[''default''][''pconnect''] = TRUE; $db[''default''][''db_debug''] = TRUE; $db[''default''][''cache_on''] = FALSE; $db[''default''][''cachedir''] = ''''; $db[''default''][''char_set''] = ''utf8''; $db[''default''][''dbcollat''] = ''utf8_general_ci''; $db[''default''][''swap_pre''] = ''''; $db[''default''][''autoinit''] = TRUE; $db[''default''][''stricton''] = FALSE;

A:

$db[''default''] = array( ''dsn'' => '''', ''hostname'' => '''', ''username'' => '''', ''password'' => '''', ''database'' => '''', ''dbdriver'' => ''mysqli'', ''dbprefix'' => '''', ''pconnect'' => FALSE, ''db_debug'' => (ENVIRONMENT !== ''production''), ''cache_on'' => FALSE, ''cachedir'' => '''', ''char_set'' => ''utf8'', ''dbcollat'' => ''utf8_general_ci'', ''swap_pre'' => '''', ''encrypt'' => FALSE, ''compress'' => FALSE, ''stricton'' => FALSE, ''failover'' => array(), ''save_queries'' => TRUE );

¡Y el error se ha ido!


Si este error ocurrió cuando aloja el sitio web, asegúrese de configurar la versión de PHP correcta (la que usa su CI).


Solo haz cambios en el archivo database.php

$db[''default''][''dbdriver''] = ''mysql'';

a

$db[''default''][''dbdriver''] = ''mysqli'';


cambie "mysql" a "mysqli" en el archivo database.php

$db[''default''][''dbdriver''] = ''mysqli'';


Funciones obsoletas en PHP 5.5.x :

La extensión de MySQL original ahora está en desuso y generará errores E_DEPRECATED al conectarse a una base de datos. En su lugar, use las extensiones MySQLi o PDO_MySQL.

Estás usando el dbdriver ''mysql'' dbdriver . Localice el archivo config/database.php y cambie dbdriver para usar ''mysqli'' :

$db[''default''][''dbdriver''] = ''mysqli'';