Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-07-2006
coletaun coletaun is offline
Miembro
 
Registrado: oct 2004
Posts: 43
Poder: 0
coletaun Va por buen camino
http server con con Tidhttpserver

Hola:

Estoy montando un sencillo servidor http con el componente Tidhttpserver de las indy. Mi pregunta es la siguiente:

Si alguien me manda unos parámetros de la forma:
http://urlservidor:8080/telefono=123...&nombre=pepito

Como recogeria los datos por parámetros en el server, es decir que me identifique el campo telefono y extraiga 123456789 y pepito como nombre por separado y los inserte en una base de datos en su campo correspondiente.

campo
telefono= 123456789
nombre= pepito

Gracias de antemano.
Responder Con Cita
  #2  
Antiguo 13-07-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Cita:
Como recogeria los datos por parámetros en el server, es decir que me identifique el campo telefono y extraiga 123456789 y pepito como nombre por separado y los inserte en una base de datos en su campo correspondiente.
Vamos por partes... una cosa será tratar de que el Servidor Web te dé acceso a las "variables" que mencionas y otra ingresar esos datos en una base de datos... ¿qué base de datos? ¿Cómo y de qué manera? No me parece una tarea sencilla a bote pronto, claro que tampoco yo soy muy ducho en casi nada. Bueno. Estoy seguro de que alguien podrá decirte algo y aun algos más.

No utiliza el componente que mencionas, pero, el compañero Seoane presentó hace poco todo un Servidor HTTP, sencillito (dice él), pero, muy curioso y cuyo código fuente tienes a tu disposición. Tal vez no pensaras en algo así, pero, igualmente puede que no vieras mal echar un vistazo al trabajo de Seoane. En el propio Hilo que enlazo también se da información sobre los componentes que mencionas y otros relacionados, por cierto.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #3  
Antiguo 13-07-2006
coletaun coletaun is offline
Miembro
 
Registrado: oct 2004
Posts: 43
Poder: 0
coletaun Va por buen camino
ok

Gracias:

El "jugetito" parece muy interesante y didactico. Lo d einsertar los registros en la base de datos(mysql), lo tengo controlado y sin problemas. La duda es como sacar el valor de las variables o parámetros que me pasan con el componente indy httpserver.

Muchas gracias.
Responder Con Cita
  #4  
Antiguo 13-07-2006
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Pues, la verdad es que no tengo mucha idea del componente que mencionas, así que puede que diga una barbaridad, máxime porque se me ocurre luego de echar un vistazo al componente... ¿No te valdría el evento "OnCommandGet"?

Código Delphi [-]
procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
  ARequestInfo.Command...
end;

Pero,... no sé porqué tengo la sensación de que no es esto lo que necesitas...
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #5  
Antiguo 13-07-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Antes de nada supongo que la direccion seria de la forma siguiente:

Código:
http://urlservidor:8080/?telefono=123456789&nombre=pepito
Fijate en el "?" esto parte la URL en 2, lo que queda a la izquierda es la direccion del documento y lo que queda a la derecha son los parametros uqe se le pasan. Aclarado esto, el componenete TIdHttpServer en su evento OnCommandGet tiene como parametro ARequestInfo y este a su ves tiene la propiedad Params que contiene cada uno de los pares Nombre=Valor.

Un ejemplito
Código Delphi [-]
procedure TForm1.IdHTTPServer1CommandGet(AThread: TIdPeerThread;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
 // Esto es una burrada, no se debe mostar mensajes en este evento, pero solo es para ver como funciona
  ShowMessage(ARequestInfo.Params.Values['telefono']);
end;

Ahora usando, por ejemplo, la URL http://localhost/?Telefono=981284871 nos mostraria un mensaje con el telefono
Responder Con Cita
  #6  
Antiguo 13-07-2006
coletaun coletaun is offline
Miembro
 
Registrado: oct 2004
Posts: 43
Poder: 0
coletaun Va por buen camino
gracias

Gracias,
Funciona perfecto, con ésto no tendre problema...
Responder Con Cita
Respuesta



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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
http server para PDA Casimiro Notevi Varios 5 05-11-2005 04:12:49
TIdHTTPServer y el uso de memoria enlavin Internet 1 15-10-2004 12:49:21
corrigen problemas en Apache http server lanysoft Noticias 0 20-07-2004 23:14:21
HTTP Indy bochi Internet 1 27-12-2003 01:57:34
Http Server ebeltete Internet 0 17-05-2003 02:57:39


La franja horaria es GMT +2. Ahora son las 00:15:26.


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