Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Internet (https://www.clubdelphi.com/foros/forumdisplay.php?f=3)
-   -   GET y POST en Acciones (https://www.clubdelphi.com/foros/showthread.php?t=29691)

Virginia S. 30-01-2006 14:29:04

GET y POST en Acciones
 
Buenas tardes,

Tengo un pequeño CGI en Delphi 7 en el cual todas las acciones que tengo creadas se pasan los parametros por GET, de la siguiente forma:

En el OnAction de una acción llamada "prueba" escribo lo siguiente:

Response.Content :='<a href="http://localhost/procesos.exe/prueba2?var1=Hola&var2=Adios">AQUI</a>';

y en el OnAction de la acción llamada "prueba2" escribo:
Response.Content :=Request.QueryFields.Values['var1']+Request.QueryFields.Values['var2'];

Con lo cual en el navegador me aprece el valor de mis 2 variables que he pasado por el método GET.

Mi problema llega cuando quiero pasar las 2 variables var1 y var2 por POST en lugar GET, es decir, cuando no quiero que se vean dichas variables en la llamada a prueba2 (http://localhost/procesos.exe/prueba2). No se como se definen dichos parametros en el On CAtion de Prueba, y después como muestro los valores de dichos parametros en la acción prueba2.

¿ALGUIEN ME AYUDA?

Muchisimas gracias.

Virginia S.

seoane 30-01-2006 15:06:54

En vez de QueryFields utiliza ContentFields.

Virginia S. 30-01-2006 15:31:58

Hola Seoane,

No, no me refiero a eso, ya se que para luego MOSTRAR los valores que paso en la accion prueba2 (http://localhost/procesos.exe/prueba2) hay que hacerlo con ContentFields.

Yo a lo que me refiero es como creo esas variables ya que si lo hago mediante GET con poner:

http://localhost/procesos.exe/prueba2?var1=Hola&var2=Adios ya estoy creando 2 variables (var1 y var2 y les estoy asignando un valor, PERO cuando quiero pasar por POST dichas variables, antes de la llamada a http://localhost/procesos.exe/prueba2 ¿COMO CREO EN DELPHI ESOS 2 PARAMETROS (var1 y var2) que voy a pasar por POST?

Muchas gracias,

Virginia S.

seoane 30-01-2006 17:20:26

Haber si ahora entiendo bien lo que quieres. :)

Veo que primero creas un link

Código:

Response.Content :='<a href="http://localhost/procesos.exe/prueba2?var1=Hola&var2=Adios">AQUI</a>';
Y efectivamente con un link solo puedes usar el metodo get

Y si probamos con un form

Código:

Response.Content :=
  '<form method="post" action="http://localhost/procesos.exe/prueba2">' +
  '<INPUT TYPE="hidden" NAME="var1" VALUE="Hola">' +
  '<INPUT TYPE="hidden" NAME="var2" VALUE="Adios">' +
  '<INPUT TYPE="submit" VALUE= "Aqui">' +
  '</form>';

De esta forma en vez de un link que ponga 'AQUI' tendras un boton que ponga 'AQUI' y que mandara los datos con el metodo post.

Espero que esta vez acertara con lo que bsucabas.

Virginia S. 30-01-2006 17:29:50

Hola de nuevo Seoane,

Vale, ahora te entendido muchisimo mejor, y veo que hay que hacerlo como un formulario, aunque me resulta un poco problemático, ya que tengo que llamar a mi acción a traves de un LINK y no de un formulario. (y necesito que sea mediante POST porque No quiero que se vean los parametros que paso y sobre todo porque voy a pasar muchos parametros con gran cantidad de información)

Entiendo entonces que la única forma de pasar parametros por POST en un CGI en delphi es mediante un formulario (corrígeme si me equivoco).

Muchisimas gracias por contestarme y haberlo hecho de la forma tan rápida que lo has hecho.

Saludos,

Virginia S.


La franja horaria es GMT +2. Ahora son las 21:39:02.

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