Dépendances oci8 et accès à une base de données

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Dépendances oci8 et accès à une base de données

Merci quand meme

par xavier.feltin » 09 juin 2005, 11:03

Ben tant pis, merci quand meme

Xavier

par Cyrano » 09 juin 2005, 10:25

Autant pour moi, c'est la ligne
;extension=php_oci8.dll
Mais si elle est décommentée aussi, alors je sais pas trop.... :?

ben ouai mais non

par xavier.feltin » 09 juin 2005, 09:59

;extension=php_oracle.dll est deja sans le ";", mais j'essaye de gérer sous oci8 et non pas oracle. Quand je clic sur les extensions php, oci8 est en rouge et me dit qu'il manque des dépendances. Or, le client oracle est installé mais il se pourrait que des dll ne soient pas au bon endroit pour easyphp et dans quel cas, ou dois je les mettre ?

Xav

par Cyrano » 09 juin 2005, 09:29

Vérifie dans ton php.ini: cherche une ligne comme celle-ci:
;extension=php_oracle.dll
Si tu la trouves avec le même ";" en début de ligne, enlève ce ";", enregistre le fichier et relance ton serveur pour que ce soit pris en compte. Ça devrait régler ton problème.

Dépendances oci8 et accès à une base de données

par xavier.Feltin » 09 juin 2005, 09:01

Bonjour !!!!

Actuellement je suis en stage. On me demande de créer une interface en php pour accéder à une base de données sous Oracle.
J'arrive à accéder à la base via sqlPlus, mais impossible de me connecter via php (de plus j'utilise l'API Pear pour des raisons de migrations futures vers PostgreSql dans l'entreprise).
Voici le code que j'ai écris :

<?php 
require_once 'DB.php';


$dsn = 'oci8://client:client@tcp(gamme11.meteo.fr:1521)/inta_gamme11.meteo.fr';



$options = array (
'debug'=>2, 
'portability'=> DB_PORTABILITY_ALL,
);


$db =& DB::connect($dsn, $options);

if (PEAR::isError($db)) 
{
echo "Connexion échouée <BR/>";
echo '<br>Standard Message: ' . $db->getMessage() . "<br>"; 
echo 'Standard Code: ' . $db->getCode() . "<br>"; 
echo 'DBMS/User Message: ' . $db->getUserInfo() . "<br>"; 
echo 'DBMS/Debug Message: ' . $db->getDebugInfo() . "<br>"; 
die($db->getMessage()); 
}
else
{
echo "Connexion réussie"; 
}
?>
et voici le résultat à l'écran :

Connexion échouée

Standard Message: DB Error: extension not found
Standard Code: -25
DBMS/User Message: [DB Error: extension not found] ** oci8://client:client@tcp(gamme11.meteo.fr:1521)/inta_gamme1.meteo.fr
DBMS/Debug Message: [DB Error: extension not found] ** oci8://client:client@tcp(gamme11.meteo.fr:1521)/inta_gamme1.meteo.fr
DB Error: extension not found

A priori c'est un probleme d'extension avec oci8. Donc j'ai regardé les extensions php, mais il me marque en rouge oci8 et me dis qu'il y a des erreurs de dépendances. A priori j'ai regardé un peu sur le web, mais aucun site n'a pu me procurer une solution suffisemment complète et satisfisante, mais j'ai pu comprendre qu'il manquerait des dll d'oracle quelque part (je ne sais ou, dossier, path et dans ce cas la comment le modifier). Donc si quelqu'un sait, je lui serai très reconnaissant de me guider dans ce labyrinthe merci !!!

NB : un client oracle avec licence est installé sur le poste pour ceux qui ne l'aurait pas compris ;-)

Xavier