php curl: ho bisogno di una semplice richiesta di post e di un retrival di esempio di pagina

Mi piacerebbe sapere come submit una richiesta di posta in arricciatura e get la pagina di risposta.

Che dire di qualcosa del genere:

$ch = curl_init(); $curlConfig = arrays( CURLOPT_URL => "http://www.example.com/yourscript.php", CURLOPT_POST => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_POSTFIELDS => arrays( 'field1' => 'some date', 'field2' => 'some other data', ) ); curl_setopt_arrays($ch, $curlConfig); $result = curl_exec($ch); curl_close($ch); // result sent by the remote server is in $result 

Per un elenco di opzioni che possono essere usate con curl, puoi dare un'occhiata alla pagina di curl_setopt .

Qui, dovrai usare alless:

  • CURLOPT_POST : come si desidera submit una richiesta POST e non un GET
  • CURLOPT_RETURNTRANSFER : a seconda se si desidera che curl_exec restituisca il risultato della richiesta o semplicemente lo curl_exec .
  • CURLOPT_POSTFIELDS : i dati che verranno pubblicati possono essere scritti direttamente come una string, come una querystring, o usando una matrix

E non esitate a leggere la sezione curl del manuale PHP 😉

 $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 = arrays( 'username' => 'foo', 'password' => 'bar' ); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); $contents = curl_exec($ch); curl_close($ch); 

prova quello nei commenti: http://php.net/manual/en/curl.examples-basic.php

(ma aggiungi curl_setopt ($ ch, CURLOPT_POST, 1) per renderlo un post invece di get)

o questo esempio: http://php.dzone.com/news/execute-http-post-using-php-cu

Penso che devi aggiungere

 curl_setopt($curlHandle, CURLOPT_POSTFIELDS, $postFields); 

Devi impostare la richiesta per pubblicare utilizzando CURLOPT_POST e se desideri passare i dati con esso, utilizza 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 = arrays( 'username' => 'foo', 'password' => 'bar' ); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); $contents = curl_exec($ch); curl_close($ch); 
  <?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; ?>