Page 1 sur 1

debutant oracle 81

Posté : 15 nov. 2005, 13:08
par saebakun
bonjour,


je debute en oracle avant je bossais sur postgresql et je suis un peu perdu.

Je voudrais tout simplement commencer par une connection et un resultat à afficher tout bête mais je bloque voila ce que j'ai:
<?

echo "bonjour";
echo "<br>";
$conn=ocilogon('xxx','xxx','xxx');

$sql="SELECT CLIENT FROM magasin where facture='xxxxxx';";

$ordre= OCIparse ($conn, $sql);

OCIexecute ($ordre);


OCIFreeCursor ($ordre);
OCILogoff($conn);


?>
mais j'ai ceci sur ma page:

bonjour

Warning: ocilogon(): _oci_open_server: Error while trying to retrieve text for error ORA-12154 in /www/sites/incidents/index.php on line 5

Warning: ociparse(): supplied argument is not a valid OCI8-Connection resource in /www/sites/incidents/index.php on line 9

Warning: ociexecute(): supplied argument is not a valid OCI8-Statement resource in /www/sites/incidents/index.php on line 11

Warning: ocifreecursor(): supplied argument is not a valid OCI8-Statement resource in /www/sites/incidents/index.php on line 16


si quelqu'un peut me donner une piste ou deux merci beaucoup.

Posté : 15 nov. 2005, 13:38
par goeb
bonjour,

l'erreur ORA-12154 correspond à : TNS:could not resolve service name
(j'ai trouvé ça sur internet)

essaie d'abord de te connecter à oracle sans PHP. peut-etre que ta base oracle est mal configurée.

Posté : 15 nov. 2005, 13:52
par saebakun
Comment je peux faire ce genre de test?

j'ai des fichiers excels qui se connectent bien sinon via des macros.

Posté : 17 nov. 2005, 18:20
par goeb
Souvent Oracle est fourni avec l'outil "sqlplus", qui permet de se connecter à la main et de manière interactive à la base de données.
Tu as peut-être cet utilitaire...

Vérifie aussi que tes macros excel se connectent de la même manière que ton PHP : sur le même ordinateur que là où le PHP s'exécute (ton serveur web si tu en utilises un), avec le même nom d'utilisateur et même mot-de-passe.

Posté : 17 nov. 2005, 19:03
par mario
vérifie le TNSNAME.ORA
et, en commande msdos, fait un TNSPING80 nomdelabase