Foros del Web » Programando para Internet » PHP »

Como conectar por ODBC sin ODBC?

Estas en el tema de Como conectar por ODBC sin ODBC? en el foro de PHP en Foros del Web. Esta es como para hacer un doctorado El tema es que la mayoria de los proveedores de hosting (incluso de pago) cuando te ponen una ...
  #1 (permalink)  
Antiguo 25/03/2004, 09:27
 
Fecha de Ingreso: noviembre-2003
Mensajes: 11
Antigüedad: 20 años, 5 meses
Puntos: 0
Como conectar por ODBC sin ODBC?

Esta es como para hacer un doctorado

El tema es que la mayoria de los proveedores de hosting (incluso de pago) cuando te ponen una base de datos en el server solo te dejan conectarte desde paginas alojadas en el propio server.
Pero que sucede si quieres acceder a tu Base de Datos (BD) desde otro server; pues deberias porder hacerlo por ODBC o por una coneccion normal, pero ellos no lo permiten por "razones de seguridad" y con esto te fastidias.

Mi pregunta (o propuesta) es: existe (o pudieramos construir) un script en PHP que acutue a modo de ODBC?

Este seria un script alojado en el mismo server donde reside la BD con todos los permisos para acceder a ella pero que traduzca las peticiones que le hacemos desde otro sitio, del mismo modo que lo hace un driver de ODBC alojado en una un server.

Dificil verdad?

Pues bien, con este tema esta chocando muuuuucha gente.

Gracias.

Última edición por jcmtnez; 25/03/2004 a las 09:29
  #2 (permalink)  
Antiguo 25/03/2004, 09:57
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Mas que crear un "driver ODBC" con PHP creo que sería mas recomendable usar técnicas tipo servidor "SOAP" o similares donde tu haces peticiones a tu servidor a tu script.php que conecta a esa Base de datos X --> obtiene la consulta y genera un formato standar de salida tipo XML ... Ese "XML" puedes "parsearlo" de forma remota desde cualquier otro servidor/aplicación .. De hecho el "XML" es un lenguaje de marcas estandar para eso mismo: compartir información entre sistemas iguales o completamente distintos.


Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 25/03/2004, 13:17
 
Fecha de Ingreso: noviembre-2003
Mensajes: 11
Antigüedad: 20 años, 5 meses
Puntos: 0
Mmmm creo que hay buen material en lo que dices, pero me surgen nuevas preguntas.

Segun entiendo lo que debo lograr es una respuesta a una consulta, pero en XML, vale. Pero que pasa si mi consulta es de ensercion o de actualizacion de un registro?

Segun entiendo, es posible, de esta manera, "leer" informacion de la base de datos. Pienso que como en mi caso, no conozco XML, puedo generar la respuestas como un fichero de texto con cierta estructura y darle forma con PHP.

Pero como decia arriba el problema seria a la hora de insertar o actualizar. Siguiendo esta logica entonces seria necesario otro script configurado para recibir campos de formulario o URL e insertarlos.

Me pregunto si habra algo mas sencillo, quizas algun script que simule un ODBC o algo parecido y que sea bidireccional.

Gracias por tu repuesta, un saludo.
  #4 (permalink)  
Antiguo 25/03/2004, 14:30
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
MM bueno .. con el "SOAP" (Web services?) si que podrías interactuar de forma bidireccional (creo .. tampoco estóy muy puesto en el tema).

Con XML sólo .. obtendrías los datos .. pero tanto la consulta a realizar (sea de "SELECT" o de "INSERT" u otras) deberías crear scripts que lo hagan previo paso de los parámetros que correspondan .. Exactamente lo mismo que haces con tu aplicación en el servidor y que directamente entregas/generas un "HTML" para verlo .. en este caso haces un XML y de ahí lo "parseas" hacia HTML si corresponde en el mismo servidor o .. en otro remoto controlado por otra aplicación que será la que lea ese archivo y lo presente en su cliente ..

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 25/03/2004, 14:30
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 10 meses
Puntos: 16
Hola,

SOAP (los web services) se basan en cliente/servidor. Tienes que tener un servidor de ese servicio web. Con PHP puedes crear tanto el servidor como el codigo del cliente. Y no tienes que preocuparte por XML, existen ya clases que implementan un servidor y un cliente SOAP. Y puedes llamar a las funciones remotas (las del servidor) de forma parecida a las dunciones normales, pasando y recibiendo variables (arrays, cadenas, enteros). Esas clases se encargan de "traducir" a SOAP (XML) esas llamadas.

Pareceido a SOAP tienes XML-RPC.

No tendrias mas que programar en el servidor SOAP las funciones tipicas de base de datos (connect, query, ...) que sera basicamente pasar los parametros recibidos a las funciones MySQL.

PHP tiene una extension experimental de SOAP, mira www.php.net/SOAP . Y como ya te he dicho, existe clases si no se puede usar la extension. Se usan de forma parecida.

Usar SOAP como servidor tiene otra ventaja. No necesitas obligatoriamente un script PHP para conectarte con el, cualquier programa que funcione como cliente SOAP podra usarlo. Asi puedes tener una web con PHP, otra con ASP, y ademas una aplicacion de escritorio, que sean clientes SOAP y se conecten a tu servidor SOAP ODBC.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #6 (permalink)  
Antiguo 26/03/2004, 08:51
 
Fecha de Ingreso: noviembre-2003
Mensajes: 11
Antigüedad: 20 años, 5 meses
Puntos: 0
Pues ahora a estudiar SOAP!
Amigos hasta cuando tenedremos que seguir estudiando cosas nuevas!!??
Creia que una vez que controlara PHP, MySQL y todo lo demas que ya sabia de antes, finalmente podria ponerme a leer novelas y a hacer deporte en mi tiempo libre.
Pues nada de eso, a leer SOAP en el metro!!!
Parece, este, realmente es un campo de futuro. Hace algunos meses estuve leyendo sobre C# por el tema de los Servicios de Internet y creo que este es el camino por el que van a ir las cosas en lo adelante; basicamente debido la gran variedad de dispositivos que comienzan a usasrse conectados a Internet.
Es inevitable, es la carrera que hemos elegido, y si no estamos al dia de nada nos vale el sacrificio anterior.

Un saludo y suerte, gracias las respuestas, Josemi y Cluster
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 11:00.