Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   mandar un post http con idHTTP (https://www.clubdelphi.com/foros/showthread.php?t=34602)

hidal 15-08-2006 07:22:16

mandar un post http con idHTTP
 
bueno, buscando me encontre con khe chinchan (o como se escriba), necesitaba lo mismo khe yo... bueno, me puse a leer lo khe decia el docuemnto khe le dieron y empece a traspasarlo a c++builder... la cosa es khe al buscar el tipo de dato "TIdMultiPartFormDataStream", c++builder no me lo reconoce... y no se en khe dato rellenar con los datos para el form... eh intentado hartas cosas... estuve cerca de 4 horas buscando y nada... si me pueden ayudar se los agradezco... gracias de antemano...

[h]

dec 15-08-2006 07:34:00

Hola,

Prueba a añadir la unidad "IdMultipartFormData" antes de utilizar la clase a que haces referencia. ;)

hidal 15-08-2006 20:15:57

gracias, dec, pero el problema es khe no logro enkhontrar esa unidad, la he buscado y no se donde estara... si pudieran guiarme y decirme donde esta les estaria muy agradecido...

de antemano, gracias

dec 15-08-2006 20:42:45

Hola,

Yo tengo instalada la versión 10 de los componentes Indy y la unidad de que hablamos se encuentra en esta ruta:

Código:

C:\Archivos de programa\Borland\Delphi7\Source\indy10\Protocols
Asegúrate de que está por ahí... y añádela la "Library Path". A ver qué tal... ;)

hidal 16-08-2006 00:35:25

entendi a la perfeccion el documento... pero mi problema sigue existiendo... iuso BCB 6 y no tengo esa unidad... intente instalar la indy 10 y no lo logro... si me pudierais ayudar os agradeceria muchismo...

dec 16-08-2006 00:59:38

Hola,

Mira que lo sabía, porque lo había visto cuando investigé un poco sobre este tema, pero, no sé poqué me empeñaba en hacerlo del modo que te decía, tal vez porque sea "más completo",... aquí me pierdo, pero, el caso es que existen varios métodos sobreescritos de nombre "Post" en el componente "TIdHttp". Uno de ellos puede utilizarse como sigue y, aunque tal vez más sencillo, el caso es que funciona:

Código Delphi [-]
uses
  IdHttp;

procedure TForm1.Button1Click(Sender: TObject);
var
  http: TIdHttp;
  params: TStrings;
  respuesta: string;
begin
  http := TIdHTTP.Create(Self);
  params := TStringList.Create;
  try
    params.Add('variable1=valor1');
    params.Add('variable2=valor2');
    respuesta := http.Post('http://dec.clubdelphi.com/temporales/pruebas-post.php', params);
    ShowMessage('Respuesta: ' + respuesta);
  finally
    http.Free;
    params.Free;
  end;
end;

Como ves, no utilizamos el tipo del que pareces no disponer. A ver si te va bien. ;)

Nota: Añado el código fuente de la página "pruebas-post.php" que es la encargada de recibir las variables en el ejemplo anterior:

Código PHP:

<?php

if(isset($_POST))
{
  
$respuesta '';
  echo 
"Enviaste las siguientes variables vía HTTP POST:\n\n";
  foreach (
$_POST as $variable => $valor)
  {
    
$respuesta .= sprintf("Variable: %s - Valor: %s\n"$variable$valor);
  }
  echo 
$respuesta;
}

?>


hidal 16-08-2006 01:02:57

dec eres mi idolo... os rendire culto.. gracias por el tiempo y a probar... adios


La franja horaria es GMT +2. Ahora son las 10:07:29.

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