sábado, 30 de abril de 2011

Envío de datos con PHP


En PHP es posible generar script para imitar el envío de datos a través de formularios que utilizan el método POST usando las cabeceras necesarias para que el navegador reconozca la petición. Veamos un ejemplo:




//Lleno los datos a enviar.
$contenido[] = “x=$x”;
$contenido[] = “y=$y”;
$contenido[] = “z=$z”;

$contenido = implode(“&”,$contenido);

$logitud = strlen($contenido);

$peticion .= “POST /pagina.php HTTP/1.1\r\n”;
$peticion .= “Host: xservidor.com\r\n”;
$peticion .= “Content-Type: application/x-www-form-urlencoded\r\n”;
$peticion .= “Content-Length: $logitud\r\n”;
$peticion .= “Connection close\r\n”;
$peticion .= “\r\n”;
$peticion .= $contenido;

if ($manejador = fsockopen(“servidor.com”, 80)) {

fputs($manejador, $peticion);

while (!feof($manejador)) {
$respuesta .= fgets($manejador, 1024);
}

fclose($manejador);
}



Con este script podremos testear nuestros formularios o se podría usar para ingreso de datos masivos. Pero también para ataque a nuestro sitios por lo que deberíamos usar un captcha para prevenir estos ataques.