Foros del Web » Programando para Internet » PHP »

Conectar Php y Oracle que esta en otra Pc?

Estas en el tema de Conectar Php y Oracle que esta en otra Pc? en el foro de PHP en Foros del Web. Hola a todos. Necesito saber de alguna cadena para conectar php a un servidor oracle que esta en otra maquina de la red... He intentado ...
  #1 (permalink)  
Antiguo 05/06/2012, 12:16
Avatar de xpapachox  
Fecha de Ingreso: junio-2011
Mensajes: 77
Antigüedad: 13 años, 5 meses
Puntos: 12
Conectar Php y Oracle que esta en otra Pc?

Hola a todos.

Necesito saber de alguna cadena para conectar php a un servidor oracle que esta en otra maquina de la red...

He intentado hacer algo como esto y nada.

$conn = oci_connect("hr", "hr", "192.168.0.13/XE");
if (!$conn) {
$m = oci_error();
echo $m['message'], "\n";
exit;
}
else {
print "Connected to Oracle!";
}

...
No se si alguien haya realizado esta conexion.
Seria de gran ayuda.
  #2 (permalink)  
Antiguo 05/06/2012, 13:16
Avatar de manuel2011  
Fecha de Ingreso: marzo-2012
Ubicación: Cuautla, Morelos
Mensajes: 31
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Conectar Php y Oracle que esta en otra Pc?

Yo utilice este:

//oracle connection variables
$ora_user = 'system'; //username
$ora_pass = 'adm'; //user password
$ora_host = '10.201.4.100'; //host name or server ip address
$ora_db = 'ora0'; //database name
$ora_host='(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = 10.201.3.158)
(PORT = 1521)
)
(CONNECT_DATA =(SID = ora0))
)'; //tnsnames like



$conn = oci_connect($ora_user,$ora_pass,$ora_host);
if (!$conn) {
$e = oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid = oci_parse($conn, 'SELECT * FROM clientes');
oci_execute($stid);

echo "<table border='1'>\n";
while ($row = oci_fetch_array($stid, OCI_ASSOC+OCI_RETURN_NULLS)) {
echo "<tr>\n";
foreach ($row as $item) {
echo " <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "&nbsp;") . "</td>\n";
}
echo "</tr>\n";
}
echo "</table>\n";


Espero te sirva.. Saludos
  #3 (permalink)  
Antiguo 05/06/2012, 18:02
Avatar de xpapachox  
Fecha de Ingreso: junio-2011
Mensajes: 77
Antigüedad: 13 años, 5 meses
Puntos: 12
Respuesta: Conectar Php y Oracle que esta en otra Pc?

Hola disculpa que te responda tarde.

He probado esa manera que has dicho..Y no logro conectarme.



Código PHP:
<?php
$ora_host
='(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = 192.168.0.13)
(PORT = 1521)
)
(CONNECT_DATA =(SERVER = DEDICATED)
(SERVICE_NAME  = xe))
)'
//tnsnames like



$conn oci_connect($ora_user,$ora_pass,$ora_host);
if (!
$conn) {
$e oci_error();
trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
}

$stid oci_parse($conn'SELECT * FROM employees');
oci_execute($stid);

echo 
"<table border='1'>\n";
while (
$row oci_fetch_array($stidOCI_ASSOC+OCI_RETURN_NULLS)) {
echo 
"<tr>\n";
foreach (
$row as $item) {
echo 
" <td>" . ($item !== null htmlentities($itemENT_QUOTES) : "&nbsp;") . "</td>\n";
}
echo 
"</tr>\n";
}
echo 
"</table>\n";

?>

Aca el Archivo tnsnames.ora de mi servidor Oracle...

XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.13)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)

Estaba leyendo tus mensajes anteriores y vi que hablaban del tsclient de oracle..

Lo descargue pero ni idea de que hacer con el..
  #4 (permalink)  
Antiguo 15/06/2012, 09:09
Avatar de manuel2011  
Fecha de Ingreso: marzo-2012
Ubicación: Cuautla, Morelos
Mensajes: 31
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Conectar Php y Oracle que esta en otra Pc?

Que tal xpapachox, para poder conectar con tu base de datos en Oracle, debes considerar lo siguiente:

1.- En tu servidor Web, debes tener habilitada la libreria oci8. Esto lo realizas desde el php.ini
2.- Debes tener en C:\instantclient_11_1 (esta versión ocupo yo) lo descargas desde la página oficial de oracle
3.- Debes configurar el Path de las variables de entorno (si tu webserver es Windows), colocar en la primera posición C:\instantclient_11_1.
4.- Recuerdad configurar el TNSnames de tu Servidor Web, cuando logre conectarte con el TOAD por ejemplo. O prueba desde el CMD haciendo TNSping a la direccion o nombre de dominio del equipo donde se encuentra instalado el servidor de oracle
5.- Listo, el script que te mande al comienzo, deberia de funcionar, con alguna tabla de las que tu tengas en tu base de datos.


Esepero haber sido claro,

saludos!

Etiquetas: oracle
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:43.