8796 sujets

Développement web côté serveur, CMS

Bonjour,

Suite à un crash, je dois réinstaller un PC d'un collègue.
Il travaille sur un projet en Oracle et utilise WAMP comme serveur web en local.

J'ai installé Oracle EX 10g, réussi à créer une base de données et à la remplir (j'y accède sans problème depuis l'interface web de Oracle XE.

Dans WAMP j'ai activité les extensions suivantes (d'après les souvenirs du collègue):
- php_mysql, php_myslqi, php_oci8, php_pdo_mysql, php_pdo_oci, php_pdo_odbc et php_pdo_sqlite.

Mais quand je lance WAMP, il m'affiche des boites d'alerte disant que les modules PDO_OCI, pdo_mysql (?) et PDO_ODBC sont already loaded.
Il me les affiches meme quelques fois 2 fois !!!
Ensuite, WAMP semble ok, mais quand je lance une appli qui utilise Oracle, j'ai ce message:
SQLSTATE[42S02]: pdo_oci_handle_factory: ORA-12154: TNS : l'identificateur de connexion indiqué n'a pas pu être résolu (ext\pdo_oci\oci_driver.c:579)

Et quand j'enleve les extensions, j'ai ce message au lancement de l'application: Erreur PDO:could not find driver.
Arggg

Je ne connais pas du tout Oracle et je n'arrive pas à résoudre le problème...et j'ai rien trouvé sur le net.

au fait, je suis sous WAMP 2.0,Apache 2.2.11 et PHP 5.3.0

Si vous avez une idée..à votre bon coeur

Merci d'avance

Marco
Modifié par pifoux (26 Feb 2010 - 02:10)
Bonjour,
j'ai exactement le meme message et je me demande si tu as pu resoudre le probleme. Smiley confus

avec PDO
new PDO("oci:dbname=".$tns,$db_username,$db_password)
=> SQLSTATE[]: pdo_oci_handle_factory: <> (ext\pdo_oci\oci_driver.c:579)



avec ocilogon
ocilogon($db_username,$db_password,$tns);
Warning: ocilogon() [function.ocilogon]: OCIEnvNlsCreate() failed. There is something wrong with your system - please check that PATH includes the directory with Oracle Instant Client libraries


Merci
Désolé,

Mais je me rappelle plus comment j'ai fais pour résoudre le problème.
Je crois avoir tout désinstallé puis réinstallé Wamp puis Oracle.

Peut être aussi que j'ai changé la facon de me conecter à la base
Avant je me connectais ainsi:
oci:dbname=xxxx;charset=UTF-8
et maintenant je fais comme ca:
oci:dbname=(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = xxxxxx)
)
)

Mais ce sont des suggestions..
Désolé de pas pouvoir te donner une réponse précise

Bonne chance

Marco
J'essais de suite ta solution, mais j'ai peu d'espoir...
Merci quand meme.

Maintenant, j'essaye avec OBDC mais je galere toujours autant.

$cnx = odbc_connect($tns, $db_username, $db_password);

SQL error: [Microsoft][Gestionnaire de pilotes ODBC] Le pilote est incapable de gérer les attributs d'environnement en cours., SQL state S1010 in SQLConnect in ...