Php y Oracle
Clasificado en:
Lo top de tops en base de datos es Oracle, sin duda. Claro, queremos mucho a nuestro querido MySql, pero el poder del Oráculo en las grandes empresas es indiscutible.
He tenido la "fortuna" de poder acceder a una base de datos Oracle, y aquí van algunos tips para hacer las cosas un poco más fáciles.
- NECESITAN el cliente de Oracle, para poder activar la extensión. Lo pueden descargar en Oracle9i Database Downloads. Para hacerlo, deben inscribirse como parte del "Club Oracle", pero eso no tiene costo.
- Si la empresa tiene el cliente, pero para Oracle inferior a 8.1, deben utilizar Php 4.0.5 para activar la extensión oci8. Si no, deberán utilizar la extensión oracle, la que según todos los entendidos (no me incluyan), es bastante poco eficiente
- Anoten MUY BIEN en el SID de la aplicación que van a utilizar. Lo van a necesitar....
- Ocupen AdoDb como clase de abstracción a la base de datos. Evitarán enfrentarse a las feas funciones para Oracle directamente y hará mucho más portable el código SQL que utilicen
- Cómo GUI, en primera instancia, es muy bueno Toad. Es un tanto compleja, como Oracle, pero funciona bastante bien.
Esos son mis notas, por el momento. Si tienen consultas, ya saben: en los comentarios.
Actualización: La URL para AdoDb ahora es http://adodb.sourceforge.net/
- 27349 lecturas
Serviria para una conección con Oracle 9i y como anda si lo haz probado..en velocidad de conexión...salu2 y gracias
Bueno, yo ocupe el cliente 9 sobre una base de datos versión 8 y corría bastante rápido, pese a las deficiencias en el diseño (creo que los index no estaban bien puestos para mi búsqueda)
Muy simple:
include('adodb/adodb.inc.php');
$db = ADONewConnection(\"oci8\");
$conn->Connect($ip,$user,$pass, $sid);
$rs = $db->Execute('select * from some_small_table');
Que tal, Salu2, me intereso esto de PHP y Oracle, podrias colocar un ejemplo de como relizar una cnexión a la Bd plz...gracias...adios
Hola....ojala me puedan ayudar para trabajar con php y oracle en Windows 2000. Ojala tengan algun ejemplo con bases de datos. Gracias y Salu2 !!!
No, si la url es siempre la misma:
http://www.apsique.com/php
Lo que pasa es que el proveedor es mas o menos, no más. De todos modos, gracias por los comentarios!
necesito ayuda con la conexion de php a oracle 9i , se puede?
necesita de alguna libreria
porfavor ayudenme
ufff...hace tiempo q no entraba por aca...se me perdia la url y no es facil encontrar tu web....pero bueno...mira tengo en mente construir un mantenedor de un modelo de Logs...es un modelo bastante sencillo pero muy bien estructurado e indexado...ya construi una aplicación en VB6 y funciona perofecto cn POO y todo el asunto este...el cuento es que quiero hacer lo mismo pero para una administración remota...asi que lo que necesito es conectarme y hacer algunas pruebas...asi que gracias por la ayuda y ahi nos vemos...espero que esta vez no se me pierda tu URL...salu2
hola, sabes que probe el codigo que esta en esta pagina y tambien me baje el adodb pero me sale un error que dice que
la funcion ora_logon no se encuentra definida en el adodo-oracle.inc.php, porfavor si tienes alguna idea de que es lo
que estoy haciendo mal, ayudame!!!!
Gracias
Karina
[...] jar con Oracle, pero que da dinero, da dinero. Nuevos consejos, como continuación del post Php y Oracle: Existen dos extensiones PHP para Oracle: php_oracle y php_oci8. La primera t [...]
Php y Oracle II
Uno de los post más 'famosos' es el de oracle. Realmente, es un dolor de muelas trabajar con Oracle, pero que da dinero, da dinero.
Nuevos consejos, como continuación del post Php y Oracle:
Existen dos extensiones PHP para Oracle: php_oracle y ph...
Estoy buscando ayuda para conectar php con una base de datos Oracle8i como es es que tengo algunos tutorales que ya descarge pero no me sirve si me pueder ayudar les voy a agradecer..
jorge.
Estoy buscando ayuda para conectar php con una base de datos Oracle8i como es es que tengo algunos tutorales que ya descarge pero no me sirve si me pueder ayudar les voy a agradecer..
jorge.
Hola Maestros, me podrian ayudar a conectar mi php4 con oracle..
es que soy nuevo y no tengo ni idea para hacerlo.. ya tengo instalado el apache y el cliente de oracle 8.1.7 pero necesito un modelo php para poder editarlo nad mas, y poder realizar la coneccion a mi servidor remoto espero queme ayuden amigos gracias!!!
por favor!!!!
hola soy nuevo con oracle me interesa si alguno me puede ayudar a (si tienen un manual mucho mejor) trabajar con oracle y php
tengo instalado el apache server con win 2000.
Mil gracias
alguien tiene una aplicación con oracle 9 y PHP???
en el comentario : " Ocupen AdoDb como clase de abstracción a la base de datos. Evitarán enfrentarse a las feas funciones para Oracle directamente y hará mucho más portable el código SQL que utilicen "
.... qye exactamente significa ocupar....
Mhhh... aprovecho de actualizar el link. AdoDb es un software de capa de abstracción de base de datos, que permite utilizar un conjunto de métodos estándar para acceder a todo tipo de base de datos. Por ejemplo, si tu instancias un objeto AdoDb, para ejecutar un query sólo debes hacer
$db->execute($query)
Y, automáticamente, la clase lo transforma en mysql_query si estás en modo Mysql, por ejemplo.
Has intentado conectarte a oracle desde php utilizando el TNS? Saludos
Lo intenté, pero sin mucho éxito. Lo mejor fue la combinación clásica de servidor / user / password
por favor necesito que alguien me explique como hago para conectar php con las bases de datos que se encuentran en oracle ya que al generar el codigo en php no reconoce los comandos y encontre en una pagina que debo agregar una libreria pero la verdad es que no se en donde se agrega
Miren, he probado editando el php.ini y quintando el comentario a la línea de la librería php_oracle.dll. Mi ambiente de desarrollo es Win2000,IIS 5.0 y PHP es 4.3.8. No sé dónde esta la falla puesto que estoy usando las funciones ora_logon("user@tns";"passwd") y me devuelve cero (0), que no sé que significado tiene. Por favor, si pueden ser un poco mas detallados en los pasos para empezar sería magnifico para todos. Hay muchos cabos sueltos y veo que muchos estamos en las mismas, ni para tras ni para delante. Si alguien ha experimentado el trabajo PHP con Oracle 8i hechen una mano al resto de nosotros. Gracias.
Hola a todos, voy a empezar a hacer una base de datos con Oracle 9i y php(no se mucho de esto), el caso el que yo trabajo con el appserv y como esto me instala todo, no me preocupo de nada. mi pregunta es que tan factible es trabajar con esta herramienta?, varia la version de php para Oracle.
hola.. me eh interesado en manejar php y mysql. pero ahora tengo un problemilla. no se como cambiar la conexion de la bd k esta en mysql a oracle..el anterior ejemplo k tienes no me funciono por k tengo fedora core 1.0 y oracle 10g... podrian ayudarme? xfis...
probe el codigo que esta en esta pagina y me da un error ocilogon
que puede ser
Hola está muy interesante este sitio... y aprovecho para comentarles sobre una duda:
Tengo una aplicación en PHP que funcionaba perfectamente en oracle 8i, hace algunos días me
actualicé a 9i y la aplicación en PHP se me está bloqueando; es decir se queda aparentemente
haciendo una consulta y no da ninguna salida cuando la consulta es pesada... pero en otro tipo de
consultas si muestra información... es posible que el problema se hubiera dado por el cambio de
versión de oracle.. lo digo por que en el oracle 8i no tenía ese problema..
Agradezco sus comentarios..
Hola amigo como estas quisira porfavor que me mandes algunos manuales de oracle y PHP
a mi correo por solo hay en ingles en la web porfa y recomendare a todos mis amigos de la facultad sobre tu pagina ..por sierto esta bien excelente muy bueno .
Bueno si mas que desirte me despido atte. su amigo Franklin de La Paz-Bolivia
Tengo apache 2, php 4, client oracle en mi servidor de paginas y mi db esta en otro servidor con
oracle 8i, cuando le quito el ; a la extension php_oci8.dll me sale un error, al igual que si
habilito la extension php_oracle.dll, quisiera saber si hice si necesito hacer otra cosa...,
Llevo dias tratando de conectar, sin exito, w2000,iis,php con oracle
9i, corriendo en un servidor linux.
He leido "todas" las páginas, tutoriales,etc. No me resulta con ora_logon,
ni con OCI, ni con ADODB.
Puedo accesar sin problemas con ODBC y alguna herramienta (hasta el excel funciona)
, pero con PHP, no hay caso.
Alguien lo tiene funcionando? que me pueda dar una ayudita?
Gracias
quisiera saber como conectar el oracle 9i con php
Qué bien, María! Es un buen consejo, que pondré en el artículo principal.
hola otra vez!! todo solucionado, el problema era de PHP5, ya que tiene un bug aleatorio a la
hora de hacer las conexiones. Todavia no esta solucionado para esa version. Hemos cambiado a la
version 4 y funciona perfectamente tanto con Apache 1. y con Apache2.
muchas gracias y esperamos q esto sirva para otros usuarios con el mismo problema.
Pude ver el código. No detecto, a simple vista, ningún error.
Envía, por favor, el error que te da la página.
Hay que verificar si la consulta es la lenta. ¿Has probado hacerla desde la consola? Si ahí funciona rápido, claro, tenemos un problema con php.
no hay manera de mandarlo:
<?php
$db="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=morpheo.unavarra.es)(PORT=1521)))
(CONNECT_DATA=(SID=cfpdbvms)(SERVER=DEDICATED)))";
$conexion=OciLogon("tenis","1979",$db) or die("Error, no se puede seleccionar la BD");
...
gracias de todos modos
lo intento otra vez:
< ?php
$db="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=morpheo.unavarra.es)(PORT=1521)))
(CONNECT_DATA=(SID=cfpdbvms)(SERVER=DEDICATED)))";
$conexion=OciLogon("tenis","1979",$db) or die("Error, no se puede seleccionar la BD");
$sentencia=ociparse($conexion,"Select ranking, nombre_j, apellido_j from jugadoras order by ranking ");
ociexecute($sentencia,OCI_DEFAULT);
$cont=1;
while(($row = oci_fetch_array ($sentencia, OCI_BOTH)) and ($cont<=10))
{
echo $row[0];
echo " - ";
echo $row[1];
echo " ";
echo $row[2];
$cont ++;
echo "";
}
OCIFreStatement($sentencia);
OCILogoff($conexion);
?>
Antes (en la 35) no salio el codigo:
< ?php
$db="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=morpheo.unavarra.es)(PORT=1521)))
(CONNECT_DATA=(SID=cfpdbvms)(SERVER=DEDICATED)))";
$conexion=OciLogon("tenis","1979",$db) or die("Error, no se puede seleccionar la BD");
$sentencia=ociparse($conexion,"Select ranking, nombre_j, apellido_j from jugadoras order by ranking ");
ociexecute($sentencia,OCI_DEFAULT);
$cont=1;
while(($row = oci_fetch_array ($sentencia, OCI_BOTH)) and ($cont<=10))
{
echo $row[0];
echo " - ";
echo $row[1];
echo " ";
echo $row[2];
$cont ++;
echo "";
}
OCIFre"e"Statement($sentencia);
OCILogoff($conexion);
?>
gracias
hola: ya hemos cambiado a apache 1.3 y tb nos da error. no sabemos si es q tenemos algun otro problema
o a q se puede deber.
tenemos instalado php5 con extensiones php_oci8.dll y php_oracle.dll. tb tenemos apache que entiende php.
no sabemos pq nos fallan las conexiones a veces van bien y otras no, además va muy lento.
este es un ejemplo de lo q hacemos:
< ?php
$db="(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=morpheo.unavarra.es)(PORT=1521)))
(CONNECT_DATA=(SID=cfpdbvms)(SERVER=DEDICATED)))";
$conexion=OciLogon("tenis","1979",$db) or die("Error, no se puede seleccionar la BD");
$sentencia=ociparse($conexion,"Select ranking, nombre_j, apellido_j from jugadoras order by ranking ");
ociexecute($sentencia,OCI_DEFAULT);
$cont=1;
while(($row = oci_fetch_array ($sentencia, OCI_BOTH)) and ($cont<=10))
{
echo $row[0];
echo " - ";
echo $row[1];
echo " ";
echo $row[2];
$cont ++;
echo "";
}
OCIFre"e"Statement($sentencia);
OCILogoff($conexion);
?>
no sabemos si nos falta algo o que es lo que hacemos mal. Cualquier ayuda nos viene bien.
gracias
Lo primero es que php y apache 2 no se llevan muy bien. Es mejor usar apache 1; la razón es el pobre soporte de algunas librerías de php para sistemas multihilos.
Aparte, tampoco sé muy bien cual será el grado de desarrollo de la extensión de oracle para php 5. De más está recordar que sería bueno probar con la última versión de php.
tenemos instalada la version 2.0 de apache, php5 en windows y oracle en otra máquina con linux.
tenemos problemas al hacer las conexiones ya que a veces ejecuta el codigo php y otras aparece un warning. No sa
no sabemos si es de php, apache u oracle pero no entendemos pq ocurre esto: el error es:
error de apache: la memoria no se puede "writen" ; O A VECES PONE "READ" y a partir de ahi da errores en conexiones y funciones de php con oracle.
otra duda: suelen ser conexiones lentas o es que hacemos algo mal?. pq tarda en entrar e incluso no entra
gracias y necesitamos por favor respuesta
hola
hola. Necesito conectarme a oracle 9i release 9.2.0.4 y debe ser de forma remota. Tenemos la base
de datos en una pc con unix y desde otro servidor de aplicaciones necesitamos acceder a la BdD
y extrear consultas. Como conectarlo de esta manera?? y que se necesita en el servidor de aplicaciones
y en el de la BdD (apáche, php4 o 5, etc).
Necesito conectarme con una base de datos oracle que esta en el servidor 1, en el servidor 2 (servidor de aplicaciones) tengo una aplicación en php. Mi pregunta es que si o si necesito instalar el cliente oracle en mi servidor de aplicaciones. Muchas Gracias
Hombre, que es lo primero que aparece en el post:
NECESITAN el cliente de Oracle, para poder activar la extensión.
Que si ya está en el servidor, es obvio que se necesita en el cliente :)
Bueno, en corto: sí.
sobre oracle :S + php :)
Tengo q realizar una pag web en php, ya tengo el oracle 8i,osea esta el servidor arriba, mi pregunta es,
¿solo debo crear el script de conexion? no hay ningun archivo para reconfigurar, sorry si la
pregunta parace muy obvia, pero nunca habia visto oracle + php
salU2
Revisa todas las operaciones descritas en este artículo y en la segunda parte, ambos
en la categoría 'php y oracle'. Eso implica revisar el php.ini, instalar el cliente de oracle y,
por sanidad mental, ocupar adodb.
Una vez que tengas eso, tienes que armar las conexiones o 'listener' desde la configuración
del cliente de oracle. No lo tengo a mano y no tengo el tiempo para verficarlo, pero si puedes
lanzar un query por el *sql, estás al otro lado.
Después de todo eso, si todavía tienes errores, veamos que pasa.
grax, perdona pero ando super perdida :(
revisare los comentarios
claudex :
Ya estoy bajando el cliente 9i, y el adodb-4.60-for-php, cualquier duda q tenga, les hare saber :D
:D
grax de nuevo
Jejeje. Bien. Vas por el camino del bien, dama.
Avisa si te resulta o no...
La cuestion creo que esta es la sentencia SQL, por si las dudas prueba con un ';' al final de la sentencia, aveces hay que darle el fin de la exprecion
ATte
isma
Buenas tardes , para quien tenga la bondad de colaborarme se lo agradesere.
Tengo una base oracle 9i en una servidor nt 2000 y desde un pc con xp necesito acceder a la BD y extrear consultas.
tengo php 5 instalado y funciona para cresar consultas en mysql, tengo instalado el cliente de Oracle9i en el pc y realiza consultas sql, quien me puede enviar un ejemplito donde me especifique como me conecto y ejecuto consultas y demas. mil gracias de antemano.
http://cl2.php.net/manual/es/ref.pdo.php
Hola a todos, resulta que anteriormente he trabajado con oracle y tambien con php pero por separado, el php que tengo es el cuatro y lo utiliso con mySQL, el Oracle que utiliso es la version 8i y 9i y me interesaria mucho comenzar a utilizar el php con oracle y la verdad no se bien que hacer, espero que me hechen la mano, si me dan tips, pasos o algun manual o tutoria en español me seria de grandisima ayuda.
GRACIAS
Que tal esto haciendo un pequeño libro de como configurar el Mysql,Postgres,Oracle con PHP usando servidores web como Wamp,Xamp,Phptriad ya que esos traen todo incluido, excepto el instalador de Postgres y de Oracle y se pueden trabajar con gran facilidad.
Bueno para que puedas acceder a una base de datos oracle con tu php lo que requieres es que tu extención este activada para esto ya sabras que la activas desde el php.ini ok, bueno aqui deves de descomentariasarla esta operación es muy importante luego de hacer eso deves de reiniciar el servidor si no resulta es por que algo en oracle esta mal instalado o por que le falta un componente dado que esta dll hace uso de las librerias de oracle directamente la dll se llama "php_oracle.dll".
Ayuda Por Favor
Hola a todos alguien me puede ayudar con la conexion de php con oracle 9i .
he descomentado en el php.ini
;extension=php_oci8.dll
extension=php_oci8.dll
pero igual no me sale ningunno de los mensajes de error ni de exito
utilizo esta cadena de conexxion alguien me puede ayudar por favor
----------------------------------------------------------------------------------------------
<?php
$db="=(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)
(HOST = 192.168.1.220)
(PORT = 1521)
)
(Connect_DATA =
(SID = SPSA)
)
)";
echo "Prueba de conexion ";
$conexion = ocilogon("user","password",$db);
if ($conexion == false)
{
echo OCIError($conexion)."";
exit;
}
else
{
echo "Conectado!!!!!!!!!";
}
?>
pero al final no tengo respustas ni de error ni de exito
como puedo conectarme via odbc remoto con oracle?
POR FAVOR ME DIJERON QUE REALIZARA UNA CONEXION OCILOGON PERO HASTA AHORA NO HE TENIDO EXITO.
SI ALGUIEN TIENE TODOS LOS PASOS SE LO AGRADECERIA
bueno que tal amigos estoy usando php + oracle con el servidor wamp y me va de maravilla , sabes tengo un problema y no se como resolverlo fijate que tengo un codigo que me muestra respetido cada campo,la consulta que hago ya lo cambie de codigo pero no doy como solucionarlo este es el codigo :
<?php
$c = oci_connect("tigre", "feroz", "//localhost/XE");
$s = oci_parse($c, 'select * from empleados');
oci_execute($s);
print '';
while ($row = oci_fetch_array($s, OCI_RETURN_NULLS)) {
print '';
foreach ($row as $item)
print ''.$item.'';
print '';
}
print '';
oci_close($c);
?>
Que le debo cambiar para que no salga repetido la consulta que tengo ????
Muchas gracias por su Atencion¡¡¡¡¡¡
Descomenten en el .ini
Con php_oci.dll; Soloquiten el; y resetean el apache
Y en su pagian de php pongan lo siguiente:
CÓDIGO
<?php
$conn = oci_connect('scott', 'tiger', 'orcl');
$query = 'SELECT * FROM EMP';
$Q = oci_parse($conn, $query);
oci_execute($Q, OCI_DEFAULT);
while ( $row = oci_fetch_array($id_sentencia, OCI_RETURN_NULLS) ) {
print_r($row);
echo '';
}
oci_close($conn);
?>
Ingresardatos(Php-Oracle) :Hola a todos,espero que alguien me pueda ayudar, ya que soy nueva en lo que es php-Oracle. Estoy desarrollando un sistema, en la cual necesito realizar varias cosas. Pero por ahora me estoy enfocando en ingresar datos a la BD de Oracle desde Php, pero ahi esta mi problema, ya que no me resulta, si alguien pudiera ayudarme en estos se lo agradeceria.
Miren logré hacer la conexión, tengo una página llamada conexioninicio.php, la cual luego solo debo llamar a esta página para lograr hacer la conexión. Y lo que necesito es por ejemplo tener una página con los campos (Nombre, dirección, telefóno),llenarlos, para luego solo apretar un boton enviar y que estos datos se almacenen en la la tabla (Cliente).
Espero haberme explicado bien...muchas gracias....chao.
...Espero estar en el foro correcto...
Hola a todos estoy trabajando php y oracle con OCI8 creouna funcion para la conexion y desconexion de oracle como estas
function conecta_oracle()
{
$link = oci_connect('system', 'henry316', '//localhost/XE');
if ($link!=true)
{
$e = oci_error();
print htmlentities($e['message']);
exit;
}
return $link;
}
/////////////////////////////////////////////////////////////////////////////////////////////////////////
function desconecta_oracle($link)
{
oci_close($link);
}
pero cuando invoka esta conexion en fromualrio para crear list?menu como esto
<?php
$query="SELECT DISTINCT A.LAPSO_DCTO FROM SYSTEM.MOVIMIENTO_VENTAS A ORDER BY A.LAPSO_DCTO ASC";
$link=conecta_oracle();
$statement = oci_parse($link,$query);
oci_execute($statement);
oci_fetch_all($statement,$resultado);
for($index=0;$index".$resultado["LAPSO_DCTO"][$index]."";
}
desconecta_oracle($link)
?>
me saca un error del Apache...se cuelga
si alguien le ha pasado lo mismo le agradeciar saber como lo soluciono..
hola gentita .. espero que me puedan ayudar ... esta es mi pregunta .. se puede trabajar oracle mediante appserv...
si alguen entiende de estos espero que me ayuden .. gracias
y si se puede como lo ago .. que utiliso -
de lo contradio .. como puedo conectar
php y oracle
gracias gente..
Sin entrar en mucho detalle, lo primero que debes tene en cuenta es que si estas usando el cliente de oracle 9i, debes tener cargada la extensión php_oci8, es la apropiada para trabajar con oracle 8i o superior.
Por otro lado debes usar php 4, si tienes instalado en tu server la versión 5, entonces debes sustituir 6 archivos basicos en el directorio donde tienes instalado el cliente de oracle, basicamente el directorio bin, por el cliente de oracle 10g, esos archivos son:
oci.dll,ociw32.dll,orannzsbb10.dll,oraociei10.dll,oraocci10.dll,ocijdbc10.dll, copialos para que remplace los anteriores.
Esto es pq php 5 carga las extensiones php_oci8 solo si tienes el cliente de oracle 10g que te puedes bajar desde la pagina de oracle gratis.
Por otro lado, usa Adodb para trabajar, es muy cómodo y bastante sencillo de instalar, mira la siguiente página http://www.lacorona.com.mx/fortiz/adodb/docs-adodb-es.htm con documentacion necesaria.
No necesitas pasar todo esa cadena que le asignase la varaible $db para conectarte, basta con que la tengas apropiadamente escrita en tu archivo TSNAMES.ORA que debe estar en la ruta oracle/network/admin.
Saludos
Por si las dudas tu usuario y password? no son variables... o constantes? revisa eso ... aveces se escapa el detalle de quien se conecta o si no se tiene ese cliente registro para Oracle...
y ojo que tenga los privilegios necesarios
Q tal! Muy bueno el sitio, al fin algo interesante!
Pues quería ver si me podias ayudar algo de info acerca del codigo que me conectar con Oracle y cualquier anomalía que se me vaya presentando en el camino. Estoy recopilando información para leer este weekend!
Gracias!
Saludos desde Ecuador
Hola a quien lea esto. Tengo un problema con la conección lo que pasa es que puedo sostener la conección pero no puedo extraer nada de la base de datos es como si no uviera nada en ella peor cuadno me conecto desde el manager si esta todo.
Agradesco mucho a quien me pueda ayudar con este problema.
Mucha gracias
Hola a todos! espero me den una ayudita! pues necesito manuales en español de cómo conectarme a Oracle desde Php? se los agradeceria mucho mi correo es chessdarwin@yahoo.es
saludos y suerte!
Quisiera saber si alguien te ha enviado algún link a alguna pag con manuales de php con oracle.
saludos desde Uruguay y gracias por adelantado.
Saludos gente del Foro lei unas de sus preguntas y me parecen que falta mas programar en PHP para resolverlas, en el sitio oficial de PHP hay documentacion de PHP, muy buena en Español e Ingles.
Mi problema es el siguiente, tengo una funcion en Oracle que consulta una tabla de empleados y retorna un cursor con los datos de la tabla, la cuestion es que solo se puede realizar la consulta al sistema por medio de procedimientos almacenados o funciones(seguridad) la cuestion es que como llamo o tomo el cursor de devuelta del Motor de Oracle.
Mucha Gracias, por si saben como ayudarme les agradezco
jo_andp@yahoo.es
codigo fuente de coneccion de php con orale porfa qen me ayuda plisss
es urgente gracias
¿Qué tengo que hacer para poder emigrar una base de datos hecha en Oracle a mysql con php?
Mi colega Cristian dice aquí que ocupes DB Artisan, que permite utilizar variadas bases de datos, incluyendo MySql(mediante ODBC) y Oracle, teniendo funciones de migración entre los distintos tipos.
La última versión sólo acepta motores de Oracle mayores a 8.1. Si necesitas manejar una base de datos Oracle más antigua, busca el Artisan 5.2 - 5.4 (por ahí).
Hola a todos(as) Quisiera que alguien me ayudase, a almacenar imagenes a una bd de oracle con codigo php he leido varias paginas pero solo e encontrado informacion de php+mysql y php+access, si alguien tiene un codigo similar a este tema que sea php+oracle haganme llegar en mi correo selos agrezco de antemano... nota los campos a utilizar son:
tabla :Imagenes
campos:
id,nombre,portada(este campo es la imagen),tipo.
Estoy trabajando con PHP, usando bases de datos en access y odbc's en el servidor para acceder a estas bases de datos.
Datos del Servidor:
PHP Version : 4.3.10
Apache Version: 2.0.46
S.O. del Servidor: W2000 SP4
Ahora me planteo usar Oracle, pero no sé como conectar, ya que quiero seguir usando ODBC. Hasta ahora he usado la funcion odbc_connect de PHP, con el dsn,usuario y password guardado en un fichero, así, cambiando esto quisiera acceder a Oracle también.
Creo los controladores ODBC apuntando a las BD Oracle en otro equipo remoto. Hago pruebas y sí que coge los datos, luego descomento la libreria php_oci8.dll en el php.ini, reinicio el servidor, y la mencionada función no tira.
NOTA: La versión del cliente instalada en el servidor es la 8.1.
Nó sé si estoy haciendo algo mal. Si alguien me pudiera ayudar, por favor que me conteste.(zillo@lycos.es)
Gracias de antemano.
Sres.
A ver si me pueden ayudar, tengo problemas con mi linux red hat y oracle9i; desde php no puedo abrir consultas a la base de datos y no se si tengo todos los componentes; tengo bien configurado php y httpd
httpd.conf y php.conf pero no se si el php.ini esta bien; no hace mensión sobre nada de oracle internamente.
Muchas Gracias
Recuerda que tu php debe estar compilado con opción para oracle. Ante las dudas, compila de la fuente con --with-oci8
No puedo hacer andar el php en w2000 con iis 5.0 me da un herror como que n tengo permiso de ejecucion en el directorio por defector de mi localhost.
Acepto sugerencias desde ya muchas gracias.
Yo tuve muchos problemas con IIS, asi que instala WAMP
www.wamp.org windows+apache+mysql+php se instala y configura solo y funciona muy bien
Víctor!!
Saludos.
Necesito conectar oracle con php. Podria decirme como??
Usa adodb te facilita la vida
include_once ('adodb/adodb.inc.php');
$db=ADONewConnection('odbc_oracle');
$db->SetFetchMode(ADODB_FETCH_ASSOC);
$db->NConnect('BD_WORLD','MI_USR','MI_PASS');
$db->debug = false;
es de mucha ayuda lo he probado con oarcle 8 y 9
y funciona muy bien.
saludos!
Te puedes conectar por el puerto ODBC
Hola si alguien tiene un ejemplo de conexion de Mysql con postgres usando ADOdb me lo puede enviar porfavor... seria eterna agradecida..
mi correo jeanette_chile@yahoo.es
include("adodb.inc.php");
$db = NewADOConnection('mysql');
$db->Connect("localhost", "root", "password", "mydb");
$result = $db->Execute("SELECT * FROM employees");
if ($result === false) die("failed");
while (!$result->EOF) {
for ($i=0, $max=$result->FieldCount(); $i < $max; $i++)
print $result->fields[$i].' ';
$result->MoveNext();
print "\n";
}
Suerte!
Víctor!!
Hola,
En este momento em encuentro desarrollando una aplicacion web para que los alumnos de un centro de educacion realicen el proceso de toma de ramos.
La estoy desarrollando en php4 orientado a objetos, un motor de plantillas(noktemplate el cual cambiare por un motor de plantillas precompiladas)y adodb, y uso una gran cantidad de variables de sesion, en si uso un arreglo de sesiones donde tengo la malla del alumno y el estado del alumno en cada ramo. aprox 5 filas por 10 columnas, osea de 50 asignaturas aproximadamente y cada asignatura tiene aproximadamente 5 valores asociados.
osea 250 variables de sesion por lo menos.
Ahora el maximo de usuarios concurrentes sera de aproximadamente 100 alumnos.
Para ello contamos con un servidor sun de 64 bits co 2 procesadores opteron y 2 gigas de memoria ram, la base de datos es oracle 9i la cual esta en otro servidor de las mismas caracteristicas pero con 4gigas de ram.
Ahora quisiera saber como balancear mejor la carga de trabajo ya que tengo muchos datos en variables de sesion.
Una opcion era dejar de usar variables de sesion y relizar un query siempre que necesite los datos lo cual haria mas lento el proceso o realizar el query y serializar el arreglo y guardarlo en disco y ocupar el archivo siempre que lo requiera, aunque hare uso de memoria siempre que recorra el archivo.
Para no correr riesgos pedi aumentar la ram del servidor web a 4 gigas pero me pidieron que realice un calculo aproximado de cuanta memoria se consume por usuario conectado, la verdad no tengo idea de como realizar este calculo.
Se que son muchas preguntas,espero me puedan dar un concejo
gracias de antemano
Vayamos por parte, como dijo Jack
Las variables de sesión se almacenan en archivos y tienes que ocupar memoria al acceder a ellas, así que no veo mucha diferencia en que ocupes el sistema nativo o hagas tu propia versión.
Si ocupas la DB, puedes optimizar los índices y el manejo de caches para que las consultas se realicen bastante rápido. Por limpieza, yo preferiría ocupar este último método.
La pregunta es: ¿por qué tienes que guardarlas en variables de sesión? Me parece un tanto extraño. Generalmente, uno utiliza este tipo de variables para almacenar información que es propia, como su nombre lo indica, de la sesión en la cual el usuario está. Las notas son un dato "permanente", por lo que me parece más conveniente recogerlo cada vez que se necesita, lo que hará menos intensivo el uso del disco y de la memoria.
Sobre el tema de la memoria, es mejor que realices un test de estrés del sistema, porque puede que se pueda producir algún cuello de botella en otro punto del sistema, como puede ser la red, la CPU o el disco. Te recomiendo buscar en google por "stress test apache" o algo similar.
Calculo..
Gracias investigare y les aviso,
consulta donde encuentro DB, es de Pear?
Víctor!!
Jjajajaja. No me refería a la clase, sino a que ocuparas la base de datos (database, DB) para extraer los datos.
¿Cúal es la ventaja de usar la base de datos solamente? Que limpias el modelo. Ante cualquier cambio en las especificaciones, sólo tendrás que hacer cambios en la base de datos y no en la base y en PHP.
Bueno entonces continuare con AdoDb para conectarme al motor Oracle 9.i a travez de oci8.
Creare procedimientos almacenados para acelerar las consultas y no abusare de las variables de sesion.
El servidor es de 64bits, asi que probare instalando la extencion de adoDb que viene en C para compilar y crear un archivo de extención .so.
Para la vista usare un motor de plantillas precompiladas o simplemente php.
Espero resulte ya les contare mas adelante, si alguien puede compartir su experiencia con php y oracle con tantos usuarios concurrentes, sera bien recibido
Eso si todo esta hecho orientado a objetos, ahora el crear objetos ocupa mas memoria que si programara estructurado?
Se que esto funcionaria mucho mejor en java pero aun no me aventuro a ello, lo que si lei es que el primer usuario que usa un servlet ocupa una porcion de ram pero los demas usuarios que quieran ocupar este servlet no ocupan un espacio de memoria sino que el servidor web crea una instancia del mismo.
ahora alguien me podria explicar como funciona esto en php?
y si el trabajo en objetos ocupa mas ram que trabajar de manera estructurada?
gracias de antemano
Víctor!!
Lo primero: claro, trabajar con objetos ocupa más memoria. Pero, si es bien utilizado, disminuye el tiempo de mantención. Y, como es bien sabido, es más cara al final la hora hombre que un poco más de RAM.
Lo segundo: si, los servlets de JAVA funcionan así. PHP, a cambio, funciona con el principio de "compartir-nada". Es decir, cada instancia de un proceso Apache con PHP es independiente de los otros; esto, que a primera vista parece una desventaja, a la hora de escalar es una ventaja, porque te permite agregar máquinas con distribución de carga sin mayores problemas.
Estimado, creo que le estás dando demasiada importancia al tema de la RAM. Sería mejor, como ya te recomendé, que vieras donde se produce el cuello de botella al estresar el sistema. Una interesante alternativa sería tener más de un servidor funcionando, aunque ninguno fuese muy grande. Por ejemplo, podrías tener un servidor secundario que manejase Apache y PHP, y el más grande la base de datos. Esto te podría ayudar a optimizar cada máquina de acuerdo a su función, lo que es más difícil si todo esta en el mismo equipo.
Como estan amigos.....
Alguno de ustedes sabe como hacer la conexion de oracle y php, y ademas tienen codigo y manuales ......nesecito hacer toda la capa logica para una aplicacion........nesecito inserciones etc....
Si alguien me puede ayudar.........el correo es Maurojav33@gmail.com
Hola a todos:
Necesito manuales preferiblemente en español de ORACLE+PHP muchas gracias a quien me pueda ayudar...
el ADO es mas utilizable en ASP no es tan necesario en PHP estimados... como conectamos Oracle en PHP???
como puedo hacer una conexion entre oracle y php
Tengo dos base de datos en php con mysql todo esta levantado con wamp, quiero migrar las BD en dos servidores Oracle 10g y dividir mi base de datos en dos una partes alojarla en serv1 y otra en serv2 y conectarme a travez de la misma aplicacion php, que o como o donde tengo que hacer las modificaciones para que pueda hacer la conexion buena. mis servidores solo seran para alojar las bases no como administradores. y tambien si hay manuales refrentes al tema donde bajar. Saludos. PikoSoft..
Hola como van, les escribo a ver si me pueden ayudar lo que pasa que es que nunca eh manejado la base de datos oracle y era si alguien me podria ayudar a conectar esa base de datos con php, tengo que hacer un programa donde se registre los pensionados y ademas lo que se les debe pagar mensualmente si depronto me pueden aconsejar algun otro lenguaje que sea mas viable que php por favor haguemelo saber ojala que el lenguaje que me recomienden no sea muy complicado de manejar y si no es mucho pedir que me digan donde podria conseguir los tutoriales, tengan en cuenta que la conexion debe ser con oracle. por favor necesito la ayuda es algo urgente que necesito gracias por la ayuda.
mi correo es lopbor@gmail.com que esten bien.
Saludos a todos los usuarios que desean conectar PHP con Oracle. En primera instancia les puedo contar que costó un poco para realizar la conexión, pero a la final le gané. Les comento que como primer paso instalé el Cliente de Oracle para que habilitara el Microsoft ODBC Driver for ORACLE, pero este no funciona, ya que no es capaz de Resolver el tnsnames.ora (Archivo que guarda la configuracion de la conexión de Oracle). Lo ultimo que hice fue instalar Oracle Modo Administrador, el cual habilita en el Administrador de ODBC un driver llamado Oracle in OraHome90. Con la habilitación de este driver la conexión es satisfactoria. Una cosa que pueden probar es realizar una conexión desde cualquier Herramienta que le permita verificar la obtención de los datos, tal como Microsoft Excel o el CALC de Open Office, para comprobar que si tienen conexión a la base de Datos. "Ojo" en el nombre del ODBC deben colocar el mismo nombre que tiene configurado el tnsnames.ora. Espero les sirva. Desde Caracas-Venezuela Enrique Hernández. h_enrike@hotmail.com
hola estoy empezando a utilizar php con oracle stoy utilizando toad para manejar la base de datos mi problema es que ya logre desplegar un reporte de la base de datos en php pero le tengo que hacer algunos ajustes a una tabla que en el query no los puedo hacer necesito construir una tabla en html que contenga el reporte que despliego en php y no se como hacerlo
o como hago la conexion de html a oracle para poder hacer la consulta y asi modificar manualmente lo que tengo qe hacer
Php + html +oracle ayuda por favor!!!!!!
lo que necesito es que despliego un reporte de trabajadores y las horas que han reportado pero a esas horas solamente a la primer vez que registran se le restan 3 hrs el resto se quda igual por ej.
luis alvarez:3hrs (debera quedar 0 y 3)
luis alvarez:3hrs
raul olvera:10 hrs (solo a las 10 le resto 3)
raul olvera:9 hrs
pero solo al primero le resto las 3 hrs al segundo ya no y eso en el query no lo puedo hacer asi que me piden que construya una pagina html y ahi haga los ajustes pero no se como
Hola necesito ayuda simplemente para hacer unas consultas desde un documento .php a una base de datos en oracle. Esta base de datos y este documento están en una sola computadora. Necesito ayuda para empezar.. el string de conexion,la configuracion del dns y todo lo que sea necesario, gracias
hola, estoy trabajando en un proyecto que tiene como cliente php y servidor oracle 8i, mi problema es que estoy trabajando con modelo objeto, no con relacional, y al conectar la base de datos me dice que el tipo de datos no es el correcto.
si saben de alguna conexion, se los agradeceria me ayudaran.
necsito ayuda! tengo Apache 2.0.55 con PHP 5.2.0 como modulo de PHP
y al hacer este tipo de conecxion
error_reporting(E_ALL);
include('ADODB494/adodb/adodb-exceptions.inc.php');
include('ADODB494/adodb/adodb.inc.php');
$T5500 = "(DESCRIPTION = (ADDRESS = (COMMUNITY = TCP)(PROTOCOL = TCP)(Host = 192.13.1.12 )(Port = 1521))(CONNECT_DATA = (SID = MBASE)))";
$db = ADONewConnection('oci8');
$db->debug = true;
IF(!$db->PConnect($T5500,'USER', 'PASS')) die('fail connect');
ME APARECE EL SIGUIENTE NOTIFICACION:
Notice: Use of undefined constant OCI_COMMIT_ON_SUCCESS - assumed 'OCI_COMMIT_ON_SUCCESS' in C:\MIWEB\ADODB494\adodb.inc.php on line 4074
AYYYYUUUUUUDDDDDDDAAAAAAA POR FAVOR
Estás seguro que incluiste el módulo de oracle en el php.ini o con dl? Busca en tu php.ini en c:\winnt\php.ini o en c:\windows\php.ini la línea
;extension=php_oci8.dll
y descoméntala.
Quiero trabjar en una pagina con PHP y Oracle el servidor es windows y tiene con web server Internet Information Server hago todos los pasos tengo el Oracle listo pero me sale error
Fatal error: Call to undefined function: ocilogon() in c:\inetpub\wwwroot\paginaweb\servicios\prueba_oracle.php on line 10
PHP Warning: Unknown(): (null): Unable to initialize module Module compiled with module API=20041030, debug=0, thread-safety=1 PHP compiled with module API=20020429, debug=0, thread-safety=1 These options need to match in Unknown on line 0
El php_oci8.dll no corresponde a tu versión de php. Te recomiendo reinstalar tu php, para que calcen las versiones.
Enviar un c