Enviar datos por POST mediante CURL
Si el otro día indicábamos cómo obtener una página protegida por autenticación, hoy vamos a explicar lo fácil que es enviar una petición HTTP con datos por POST usando CURL.
Tan solo es necesario indicar que se envían datos por POST e indicar qué datos se van a mandar:
<?php
$ch = curl_init('http://dominio.com/pagina.php');
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, "parametro1=valor1¶metro2=valor2");
curl_exec ($ch);
curl_close ($ch);
?>
Con CURLOPT_POST indicamos que enviamos datos en POST y con CURLOPT_POSTFIELDS indicamos los datos.
Relacionados
Feedback (4) » Formulario
2. Jonatan ~ Domingo, 09 Mar 2008 | 05:31H:
podes haciendo esto:
$code = curl_exec($ch);
o sino esto:
ob_start();
curl_exec($ch);
$code=ob_get_contents();
ob_end_flush();
Saludos
3. joel ~ Jueves, 17 Abr 2008 | 19:31H:
Muy bueno el ejemplo pero tengo una duda como podria enviarle datos por GET a un php que esta en otro servidor he intentado cambiar POST por GET pero no funciona.
4. elphaba ~ Lunes, 28 Abr 2008 | 17:22H:
muy bueno, lo he usado y funciona perfectamente,
yo tambien almaceno la salida en una variable,
pero lo que no se hacer es como allmacenar los datos que le pasas al servidor.
Yo uso
curl_setopt($ch, CURLOPT_POSTFIELDS, $datos); //estos son los campos POST
en donde
$datos= "
$op
$id_user
$us
";
cuando me llega esto al servidor quiero guardarlos en variables o en un array porque tengo que hacer operaciones con ellos, y no se como hacerlo

