curl_init - php curl header
php curl: necesito una simple solicitud de publicación y recuperación de un ejemplo de página (6)
¿Qué tal algo así?
$ch = curl_init();
$curlConfig = array(
CURLOPT_URL => "http://www.example.com/yourscript.php",
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => array(
''field1'' => ''some date'',
''field2'' => ''some other data'',
)
);
curl_setopt_array($ch, $curlConfig);
$result = curl_exec($ch);
curl_close($ch);
// result sent by the remote server is in $result
Para obtener una lista de opciones que se pueden usar con curl, puede echar un vistazo a la página de curl_setopt
.
Aquí, tendrás que usar, al menos:
-
CURLOPT_POST
: como desea enviar una solicitud POST, y no un GET -
CURLOPT_RETURNTRANSFER
: depende de si desea quecurl_exec
devuelva el resultado de la solicitud, o simplemente lo emita. -
CURLOPT_POSTFIELDS
: los datos que se publicarán se pueden escribir directamente como una cadena, como una cadena de consulta o mediante una matriz
Y no dude en leer la sección curl del manual de PHP ;-)
Me gustaría saber cómo enviar una solicitud de publicación en curl y obtener la página de respuesta.
Creo que debes agregar
curl_setopt($curlHandle, CURLOPT_POSTFIELDS, $postFields);
Debe configurar la solicitud para publicar utilizando CURLOPT_POST
y si desea pasar datos con ella, use CURLOPT_POSTFIELDS
:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
$data = array(
''username'' => ''foo'',
''password'' => ''bar''
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$contents = curl_exec($ch);
curl_close($ch);
prueba el de los comentarios: http://php.net/manual/en/curl.examples-basic.php
(pero agregue curl_setopt ($ ch, CURLOPT_POST, 1) para que sea una publicación en lugar de obtener)
o este ejemplo: http://php.dzone.com/news/execute-http-post-using-php-cu
<?php
ob_start();
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,''https://example.com/student_list.php'');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
echo $response;
?>
$url = "http://www.example.com/";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
$data = array(
''username'' => ''foo'',
''password'' => ''bar''
);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
$contents = curl_exec($ch);
curl_close($ch);