Version 1 — Août 2005 — Dan Hetzel — Version initiale
Après plusieurs heures de recherche, de debug, j’ai enfin réussi à interroger une base Oracle.
voici donc le résultat des mes investigations :
Une connexion à Oracle qui fonctionne,
TNSNAMES.ORA
est bien configuréphp.ini
supprimer le point virgule devant extension;extension=php_oracle.dll
[Erreur...5][Erreur...6]global $connexion ;
$tns = monserveur’ ;
$user = « login@$tns » ;
$pass = ’pass’ ;
$connexion = ora_logon($user, $pass) ;
if ($connexion == FALSE)
echo «
».ora_errorcode($connexion).« : ».ora_error($connexion) ;
[Erreur...8][Erreur...9] // Erreur ? C’est du debug de squelette, ou une erreur du serveur
if ($GLOBALS[’var_mode’] == ’debug’)
boucle_debug_resultat($id, ’’, $q) ;
$q = ereg_replace (strtolower($serveur).« _ », « », $q) ;
// remplacer le debut des noms de tables pour coller avec les tables réelles du serveur
// permet de ne pas avoir un doublon avec les tables spip
echo «
».ora_error($mycursor).« ».ora_errorcode($mycursor)."
" ;
ora_parse ($mycursor, $q, 0) ;
if ($mycursor == FALSE)
echo «
».ora_error($mycursor).« ».ora_errorcode($mycursor)."
" ;
ora_exec ($mycursor) ;
if ($mycursor == FALSE)
echo «
».ora_error($mycursor).« ».ora_errorcode($mycursor)."
" ;
[Erreur...11][Erreur...12]$articles_key = array(
« PRIMARY KEY » => « article »
) ;
$table_ora[’ora_articles’] =
array(’field’ => &$articles, ’key’ => &$articles_key) ;
[Erreur...15]$GLOBALS[’tables_des_serveurs_sql’][’ORA’]=&$table_ora ;
[Erreur...17][Erreur...18]Remerciements
merci beaucoup à :
N’hésitez pas a participer : ajouter vos commentaires, corrections, etc...
@+ Coyote