Hola a todos.
Tengo una aplicación en PHP "tradicional" y la he reprogramado con Zend Framework, que es la primera vez que lo utilizo.
Mi problema es que con el Zend me da un error en el hosting al conectarse a la base de datos.
En local en mi Portatil no tengo ningún problema.
En el hosting que tengo contratado tengo la aplicación en funcionamiento correctamente y he creado una carpeta "zend" donde he puesto la nueva versión hecha con Zend y atacar a la misma base de datos para probar la nueva versión.
Me dice el siguiente error:
Message: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Aquí les dejo la configuración que tengo.
aplication.ini
Código:
[production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.defaultModule = "default"
resources.frontController.params.displayExceptions = 1
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
resources.view.helperPath.My_View_Helper = APPLICATION_PATH "/views/helpers"
resources.db.adapter = "Mysqli"
resources.db.params.hosts = "xxxxx"
resources.db.params.username = "xxxxx"
resources.db.params.password = "xxxxx"
resources.db.params.dbname = "xxxxx"
resources.db.params.charset = "utf8"
resources.db.params.driver_options.1002 = "SET NAMES utf8"
resources.db.isDefaultTableAdapter = true
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules[] = ""
resources.frontController.params.prefixDefaultModule = "1"
index.php
Código:
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));
// Define application environment
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
/** Zend_Application */
require_once 'Zend/Application.php';
require_once 'Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();
$loader->setFallbackAutoloader(true);
$loader->suppressNotFoundWarnings(false);
try {
$db = Zend_Db::factory('Pdo_Mysql', array(
'host' => 'xxxxx',
'username' => 'xxxxx',
'password' => 'xxxxx',
'dbname' => 'xxxxx'
));
//Test de conexión con la base de datos
$db->getConnection();
// Establecemos que $db será el Adapter por defecto
Zend_Db_Table_Abstract::setDefaultAdapter($db);
} catch (Zend_Db_Adapter_Exception $e) {
//Sucedió un error con las credenciales del usuario o la base de datos.
die($e->getMessage());
} catch (Zend_Exception $e) {
// Sucedió un error inexperado
die($e->getMessage());
}
// Create application, bootstrap, and run
$application = new Zend_Application(
APPLICATION_ENV,
APPLICATION_PATH . '/configs/application.ini'
);
$application->bootstrap()
->run();
Alguna sugerencia?