Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-07-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 64
Poder: 14
oliverinf Va por buen camino
Conexión a una BD remota

Hola a todos, Necesito hacer un sistema de consulta (solo a usuario autorizados a traves de una clave), pero no quiero que la base de datos (en Interbase, digamos) este alojada en el servidor Web, sino en un servidor de una red local (con acceso a internet obvio). En el momento que el usuario realice la consulta, ésta deberá ser redirigida a la pc indicada.

Por ejemplo, los usuarios deberán ingresar a un sitio www.xxxxxx.com a realizar consultas a una BD que NO se encuentra en el servidor sino en una pc remota que pertenece a una red privada.

No Estoy 100% seguro que se pueda hacer asi que si lo han hecho les agredeceré que me den una mano.
las herramientas a utilizar serán PHP e interbase.

saludos.
Responder Con Cita
  #2  
Antiguo 16-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.243
Poder: 21
jachguate Va por buen camino
Cool

Hola.

Tenes dos formas de enfrentarlo:
  • Database server privado
    • El servidor tiene acceso a la pc donde reside la bd, ya sea a través de internet o de la red privada. Esto significa también que si hay firewalls de por medio, estos permitirán el tráfico por los puertos de la bd.
    • El servidor tiene instalado (y funcional) el cliente de la base de datos elegida (firebird, digamos). La cadena de conexión incluye el nombre del servidor, de manera que el método de conexión es el tradicional.
    • No hay nada mas que hacer. Sea con un cgi, intraweb, php o lo que querras, la gente puede conectarse a www.xxxxxx.com y consultar la base de datos.
  • El otro servidor también es un webserver, con su ip-publico y todo en regla. Podes hacer que sea un subdominio del principal. Digamos db.xxxxxx.com, y cuando alguien quiere consultar algo de la bd, pues le redirigis alli, donde ya todo trabajará de forma local.

Por cierto, ya que habias habierto este hilo, considero innecesario el mensaje http://www.clubdelphi.com/foros/show...56&postcount=3. Sobre todo tratandose de dos casos totalmente distintos (aunque parezcan parecidos).

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #3  
Antiguo 16-07-2004
Mick Mick is offline
Miembro
 
Registrado: may 2003
Posts: 405
Poder: 15
Mick Va por buen camino
El lugar de alojamiento del servidor de base de datos es irrelevante para el cliente.
El ordenador servidor de base de datos no necesitar ser accesible desde internet, mas bien por cuestiones de seguridad debe ser al contrario.
Es el codigo php alojado en el servidor web el que conecta a la base de datos, el navegador del cliente no conecta nunca a la base de datos ni siquiera sabe que es eso de una base de datos, se limita a mostrar las paginas web que le envia el codigo php.
Asi que para hacer lo que quieres, no tienes que hacer nada especial simplemente configurar la cadena de conexion a interbase en el codigo php para que apunte a donde quieras.
En lugar de poner:

$db_handle= ibase_pconnect( 'localhost:c:\misdatos.gdb','SYSDBA','masterkey','ISO8859_1');

pues simplemente escribes:

$db_handle= ibase_pconnect( 'miservidorelquesea:c:\misdatos.gdb','SYSDBA','masterkey','ISO8859_1');

Saludos
Miguel
Responder Con Cita
  #4  
Antiguo 19-07-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 64
Poder: 14
oliverinf Va por buen camino
Antes que nada gracias por sus respuestas. Las alternativas que me indicaron son las que había pensado, el tema es que el acceso a internet para la red local es por adsl, con lo cual la IP con que se conecta la PC de la red local es dinamica (no tengo asignada una IP fija), por lo tanto para poder realizar una conxción desde código PHP debo conocer exactamente la Ip del servidor de Datos, con lo cual se me ocurren dos alternativas (acepto sugerencias) :
- Pedir a mi proveedor de internet una IP fija, o bien
- Cada vez que se establece una conexión a internet, informar a mi programa PHP la IP con que se conectó.

Si se puede por razones de simplicidad es mejor la primera , no se que les parece a uds.

Saludos,
Responder Con Cita
  #5  
Antiguo 20-07-2004
Avatar de tcp_ip_es
tcp_ip_es tcp_ip_es is offline
Miembro
 
Registrado: ago 2003
Ubicación: Madrid
Posts: 635
Poder: 15
tcp_ip_es Va por buen camino
Este link os puede servir:
http://www.no-ip.com/

te crea un dominio y lo redirecciona siempre a tu ip dinámica con lo que el nombre nunca cambiará, y asi tu ip dinámica será fija

Saludos, Tony
Responder Con Cita
  #6  
Antiguo 20-07-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 64
Poder: 14
oliverinf Va por buen camino
Gracias tony por el dato, pero te comento que ya estuve por dicho sitio y para ser sincero no me termina de convencer.
Si lo estas usando te agradeceré que me detalles que tal funciona. Ademas, es free o hay un abono?

Por otro lado, me interesaria hacerlo con las alternativas que indique anteriormente, asi que si alguien hizo lo que necesito pero sin IP fija escucho sugerencias..

saludos,
Responder Con Cita
  #7  
Antiguo 20-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.243
Poder: 21
jachguate Va por buen camino
Cool

Cita:
Empezado por oliverinf
con lo cual la IP con que se conecta la PC de la red local es dinamica (no tengo asignada una IP fija), por lo tanto para poder realizar una conxción desde código PHP debo conocer exactamente la Ip del servidor de Datos,
Si estas hablando únicamente del servidor de datos, podes perfectamente usar el nombre del equipo para conectarte a él.

la cadena de conexión puede ser:

"servidordatos:c:\datos\datos.fdb"

por ejemplo.

Si tenes una IP dinámica en el servidor web, la solución ya planteada por el amigo tcp_ip_es es muy buena, y si el servicio de no-ip.com no te convence, tenes otras alternativas, como www.dyndns.org.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #8  
Antiguo 20-07-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 64
Poder: 14
oliverinf Va por buen camino
Cita:
Empezado por jachguate
Si estas hablando únicamente del servidor de datos, podes perfectamente usar el nombre del equipo para conectarte a él.

la cadena de conexión puede ser:

"servidordatos:c:\datos\datos.fdb"

por ejemplo.

he aqui el problema, es el servidor de datos el que tiene la ip dinamica, con lo cual No puedo acceder de la forma:
"servidordatos:c:\datos\datos.fdb", ya que no conozco la IP.

A lo mejor hay un mal entendido en lo que yo deseo hacer.

"Por un lado existe una red Local con su servidor de Datos (Pc que aloca la BD). POr otro lado en un servidor web se dejará un sistema de consultas (implementado en PHP por ejemplo) que los usuarios accederan desde cualquier browser. La consulta deberá ser realizada a la base de datos que se encuentra en el servidor de datos de la red.
Esta PC tiene una conexion adls con IP Dinamica. Con lo cual la pregunta original era: Como puedo realizar la conexion al servidor de datos si éste tiene una IP dinamica?"

Espero que ahora se entienda (si es que existio el malentendido)

Muchas gracias y saludos
Responder Con Cita
  #9  
Antiguo 20-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.243
Poder: 21
jachguate Va por buen camino
El webserver y el dataserver están en la misma red local?
__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #10  
Antiguo 20-07-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 64
Poder: 14
oliverinf Va por buen camino
Cita:
Empezado por jachguate
El webserver y el dataserver están en la misma red local?
NO... por eso te decia de la imposibilidad de acceder de la forma en que mencionabas.

Yo quiero que el servidor de datos sea una pc local a mi red.

saludos.
Responder Con Cita
  #11  
Antiguo 20-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.243
Poder: 21
jachguate Va por buen camino
Cool

Cita:
Empezado por oliverinf
Yo quiero que el servidor de datos sea una pc local a mi red.
Pues esta pc debe responder a un ip público (estático o dinámico).

Si es estático, te conectas de la forma:

216.230.1.4:c:\datos\datos.fdb o
216.230.1.4:/home/jachguate/datos.fdb

si es dinámico, bien te vales de algun servicio de los ya mencionados, para obtener un identificador global y conectarte de la forma:

subdominio.dyndns.org:c:\datos\datos.fdb o
subdominio.dyndns.org:/home/jachguate/datos.fdb

o bien estableces un mecanismo para informar al webserver de la IP asignada cada vez al servidor de datos. Bien puede ser un simple script PHP que registre la dirección pasada como parámetro (GET o POST) en un archivo de texto. Luego, el PHP que consulta la BD abriría este archivo cada vez, antes de conectarse a la BD y utilizaria esta información para establecer la conexión.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #12  
Antiguo 20-07-2004
raul_sal raul_sal is offline
No confirmado
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 45
Poder: 0
raul_sal Va por buen camino
Es lo mismo para MySQL

Que tal amigos yo tengo que realizar algo similar pero con MySQL seria lo mismo para esta base de datos.

Gracias.
Responder Con Cita
  #13  
Antiguo 20-07-2004
oliverinf oliverinf is offline
Miembro
 
Registrado: feb 2004
Posts: 64
Poder: 14
oliverinf Va por buen camino
jachguate , muchas gracias por tu ayuda voy a probar la alternativa que me indicas.
saludos.
Responder Con Cita
  #14  
Antiguo 20-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.243
Poder: 21
jachguate Va por buen camino
Que tal Raul.

La conexión remota es posible para cualquier motor. Simplemente el webserver ha de tener instaladas las librerias, clientes y otros accesos que hagan falta para echar a andar cualquier programa que intente conectarse a la BD.

hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #15  
Antiguo 21-07-2004
raul_sal raul_sal is offline
No confirmado
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 45
Poder: 0
raul_sal Va por buen camino
Conexion con MySQL en un Hosting Compartido

Para poder realizar esto me imagino que si es necesaria una direccion de IP fija, no estoy seguro por eso me gustaria que me echaran una mano ya que me urge montar mi sitio web y necesito confirmar si necesito IP FIja o no

Muy Agradecido
Responder Con Cita
  #16  
Antiguo 21-07-2004
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.243
Poder: 21
jachguate Va por buen camino
Cool

Cita:
Empezado por raul_sal
me imagino que si es necesaria una direccion de IP fija
No necesariamente fija, pero si pública.

En el caso de ip dinámica (variable) se han mencionado en este hilo por lo menos dos soluciones para asociarles un dominio que se ajuste dinámicamente a su IP.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 00:47:02.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi