[zf2] Erreur au niveau de la connexion au BD
Résolu
Nouvelle_Informaticienne
Messages postés
173
Statut
Membre
-
Mieux de ne pas répondre que de répondre mal -
Mieux de ne pas répondre que de répondre mal -
Bonjour,
Donc voila mon problème, j'ai commencé un projet sur zend framework 2 avec le squelette et le tuto du site officiel de zend.
J'utilise Oracle et je suis le tuto à la lettre, pas d'erreurs jusqu'à l'étape "Listing albums" , mais voila au moment de la connexion à la base de données avec PDO, j'ai cette erreur là :
au niveau du fichier :
je ne sais pas du tout l'origine de cette erreur ! Donc voila je ne sais plus quoi faire si vous pouviez m'aider ce serait super.
Merci !
Donc voila mon problème, j'ai commencé un projet sur zend framework 2 avec le squelette et le tuto du site officiel de zend.
J'utilise Oracle et je suis le tuto à la lettre, pas d'erreurs jusqu'à l'étape "Listing albums" , mais voila au moment de la connexion à la base de données avec PDO, j'ai cette erreur là :
SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)
au niveau du fichier :
/home/www/hajar/vendor/zendframework/zendframework/library/Zend/Db/Adapter/Driver/Pdo/Connection.php:281
je ne sais pas du tout l'origine de cette erreur ! Donc voila je ne sais plus quoi faire si vous pouviez m'aider ce serait super.
Merci !
1 réponse
-
Bonjour,
Tu nous dis :
J'utilise Oracle
et le message d'erreur indique :
Can't connect to local MySQL
pourrais tu nous montrer ta chaine de connexion ?
Tu utilises une bdd mysql ou une bdd oracle ? Si oracle, quelle version ?
Tu travailles en local ou sur un serveur ?
Ta bdd est sur le même serveur que ton site php ou un serveur distant ?
Si tu es en local, tu utilises "localhost" ? Si oui, essaye avec "127.0.0.1"
Si ta bdd est bien ORACLE et non MYSQL, as tu changé, dans ton fichier autoload/global.php, la configuation pour pointer sur le driver OCI8 (et non PDO ) ?return array( 'db' => array( 'driver' => 'OCI8', 'connection_string' => 'localhost/orcl', 'character_set' => 'AL32UTF8', ), 'service_manager' => array( 'factories' => array(
voici une doc sur le sujet :
https://blogs.oracle.com/opal/getting-started-with-php-zend-framework-2-for-oracle-db
.
-
merci pour votre réponse.
voici le fichier que j'ai modifié global.php
return array(
'db' => array(
'driver' => 'OCI8',
'dsn' => 'mysql: dbname=RPI_TEST;host=http:dsi-zend-test',
'driver_options' => array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\''
),
),
'service_manager' => array(
'factories' => array(
'Zend\Db\Adapter\Adapter'
=> 'Zend\Db\Adapter\AdapterServiceFactory',
),
),
);
Oui c'est la première fois que j'utilise Oracle,
Je travaille sur un serveur et non pas sur le local.
Normalement la BDD est sur le meme serveur
Je ne suis pas sur le Local
l'erreur maintenant est la suivante après une modification au niveau de global.php
Connection error
Dans lr fichier que je pense je n'ai pas touché !! :
/home/www/hajar/vendor/zendframework/zendframework/library/Zend/Db/Adapter/Driver/Oci8/Connection.php:206 -
Je sais bien faire des copier / coller mais n'oubliez pas que j'apprend Oracle et Zend du coup je préfère comprendre et tester, pour au moins comprendre un peu surtout que je débute avec Oracle et Zend.
Je suis entrain de voir la doc que vous m'avez passé.
Merci !- Enfin quand même....
Je te donne ça'db' => array( 'driver' => 'OCI8', 'connection_string' => 'localhost/orcl', 'character_set' => 'AL32UTF8', ),
et toi tu nous montres ça ....db' => array( 'driver' => 'OCI8', 'dsn' => 'mysql: dbname=RPI_TEST;host=http:dsi-zend-test', 'driver_options' => array( PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES \'UTF8\'' )
Même sans faire de copier/coller.... si tu cherches à comprendre... tu commences par comparer entre ce que tu as écrits et ce qu'on t'indique... c'est tout de même le minimum....
Bonne continuation.
-
Merci mais j ai comparé entre les deux et je me suis dis peut etre le local host dans votre code designe la nom de serveur et je l ai remplacé par le nom de serveur .. j ai fais l erreur de copier http avec le nom de serveur, j ai verifie que c'est bien OCI8 comme vous avez dit ! Et j ai gardé les autres lignes là ou vous avez rien mentionné! Si je ne cherche pas a comprendre et a apprendre et je ne vais pas poser ma questiin sur le forum et attendre des explorations ! Et aussi des ( des decouragements )
Merci
-