[ PHP 5.x ORACLE 9i sur IIS ] Pb de connection

pouet45 Messages postés 5 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 28 février 2006 - 28 févr. 2006 à 15:15
 llmagic - 1 juin 2016 à 14:59
J'ai une plateforme intranet sur WIN2K / IIS / PHP en mode ISAPI,

je n'arrive pas a me connecter a une base ORACLE 9i sur une serveur distant,

j'ai bien installer le client oracle et configurer le tnsnames,
j'y accede bien via le tnsping et sqlplus...
j'ai meme configurer un lien odbc sur la base et la aussi je m'y connecte bien
(via le test ODBC)
j'ai positionner les variables d'environnement :
ORACLE_HOME ; ORACLE_SID ; TNS_ADMIN ; PATH ;
PHP reconnait bien ma fonction ocilogon(), mais il me genere cette erreur :
"PHP has encountered an Access Violation at 023FCEC1"
voici mon code :

PutEnv("ORACLE_SID=TESTSID");
PutEnv("ORACLE_HOME=c:\ora9.2");
PutEnv("TNS_ADMIN=C:\ora9.2\network\ADMIN");

if ($c=ocilogon("USER", "PASS", "TESTSID")) {
echo "Successfully connected to Oracle.\n
".$c."\n
";
OCILogoff($c);
} else {
$err = OCIError();
echo "Oracle Connect Error " . $err[text];
}

je seche !!!
please help me !!!

3 réponses

malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
28 févr. 2006 à 17:02
Hello,

jamais utilisé Oracle avec PHP.
ceci dit, tu as essayé de virer TESTSID de ta connexion?
Ce que je lis dans la doc, moi, c'est que si le 3ème paramètre $db n'est pas spécifié, PHP utilisera automatiquement l'instance Oracle (ORACLE_SID) pour trouver à quelle db se connecter.
Or là, tu lui passes une chaîne contenant TESTSID.
A moins que TESTSID soit le nom de ta base, évidemment...

Heu, en lisant tes putenv() je me rends compte que c'est effectivement probablement le cas ;-)
Le problème c'est que cette erreur est trop vague pour déterminer d'où elle vient :-( Saloperie de Windows ;-)
Ceci dit, avec qques recherches sur le net, il semble que bcp d'utilisateur aient cette erreur avec IIS , et PHP en mode ISAPI. Sans workaround connu...(en tous cas, je n'en ai pas trouvé).
Essaye peut-être bêtement de mettre à jour IIS...?
0
pouet45 Messages postés 5 Date d'inscription jeudi 1 septembre 2005 Statut Membre Dernière intervention 28 février 2006
28 févr. 2006 à 17:27
j'ai encore 2 3 pistes a etudier ...
Droit d'acces sur la base oracle (nobody,www)
Mise a jour de l'oci8.dll ( vu sur un forum oracle )

je vais essayer sans le ORACLE_SID ...
mais je sui presque persuader que le probleme ne viens pas de la ...
il faut bien qu'il recupere ces petits car la bas est pas en local

merci qd meme
@+
0
bonjour pouet
comment fait tu pour donner les droits d'accès sur la base oracle à IIS
merci pour la réponse
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
28 févr. 2006 à 17:30
Effectivement, c'est souvent un problème de droits semble-t-il...c'est une bonne piste à étudier.
Désolé de ne pouvoir t'aider plus.
Bonne chance :-)
0
Rejoignez-nous