Enviar datos por el metodo POST a un formulario
Publicado: 16 Sep 2010, 07:25
Hola, tengo un problema , no entiendo como hacer lo mismo que hice en Perl (mas abajo dejo el código en Perl), en el lenguaje de AutoIT con mejoras..
Quiero pasarlo a una Funcion mi Script en Perl donde:
- Envié datos por el método POST ( /register.php?username=User&password=1234 ) a un formulario en PHP.
- Si no hay internet o no se puede conectar al host (sitio web donde esta el formulario) osea el Socket de conexión durante X intentos falle, y entre cada intento de prueba tenga una espera de X tiempo, si así falla devuelva error la función.
- Y si los datos fueron enviados, devuelva un valor para indicar que salio todo bien.
...
Les dejo el fragmento del Script que programe en Perl (es el código que me interesa pasar a Autoit y mejorarlo):
Bueno este es mi código primitivo en AutoIT (no es una función!!, busco hacerlo en una función y controlar los valores de retorno)
Este código me da error!, tal vez puedan ver a simple vista que error cometo al usar HTTP.au3 si tengo otra alternativa, o como prodia pensarlo mejor:
Si queda algo en Duda, preguntarme!!
Gracias por leer, un saludo att. Dertin!
Quiero pasarlo a una Funcion mi Script en Perl donde:
- Envié datos por el método POST ( /register.php?username=User&password=1234 ) a un formulario en PHP.
- Si no hay internet o no se puede conectar al host (sitio web donde esta el formulario) osea el Socket de conexión durante X intentos falle, y entre cada intento de prueba tenga una espera de X tiempo, si así falla devuelva error la función.
- Y si los datos fueron enviados, devuelva un valor para indicar que salio todo bien.
...
Les dejo el fragmento del Script que programe en Perl (es el código que me interesa pasar a Autoit y mejorarlo):
Código: Seleccionar todo
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
my $ua = LWP::UserAgent->new;
$ua->agent("Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)");
my $url= 'http://ip.globalpatrol.net/rds/register.php?username='.$ipfetchusername.'&password1=1234&password2=1234&fullname=Elcodigo DaVinci&[email protected]';
my $req = HTTP::Request->new(POST => $url);
my $response = $ua->request($req);
my $content = $response->content();
print "Content-type: text/html\n\n";
print $content;
Este código me da error!, tal vez puedan ver a simple vista que error cometo al usar HTTP.au3 si tengo otra alternativa, o como prodia pensarlo mejor:
Código: Seleccionar todo
#include <HTTP.au3>
#include <String.au3>
Dim $IPFetchUsername = @ComputerName & @UserName & @SEC
$IPFetchUsername = StringRegExpReplace($IPFetchUsername,'[^[:alnum:]]','')
$IPFetchUsername = StringLower($IPFetchUsername)
Dim $host = "http://ip.globalpatrol.net"
Dim $page = "/rds/register.php"
$vars = "username=" & $IPFetchUsername & "&password1=1234&password2=1234&fullname=ElcodigoDaVinci&[email protected]"
$url = $page & "?" & _HTTPEncodeString($vars)
$socket = _HTTPConnect($host)
$get = _HTTPPost($host, $url, $socket)
If @error Then
MsgBox(0,"Info Error -" & $IPFetchUsername, $get)
EndIf
MsgBox(0,"Info", $IPFetchUsername & " - "& $get)
_HTTPClose($socket)
Gracias por leer, un saludo att. Dertin!