Fazendo uma requisição Post utilizando Curl no PHP

Para fazer uma requisição POST utilizando Curl no PHP, precisamos de poucas linhas de código.Requisição POST utilizando Curl no PHP

Requisição POST seria o envio de variáveis (similar ao submit de um form com method post) para uma URL de destino.

Vamos ao código

Primeira parte do código:

$url = 'http://destino.com.br/salvar_teste.php';
$vars = 'nomedavariavel1=valorvar1&nomedavariavel2=valorvar2';

Temos a variavel “url”, com endereço de destino e “vars”, com os valores a serem enviados.

Observe bem a ordem da String, aonde temos o nome da variável, igual, valor da variável e o “e” comercial para concatenar com outra variável se necessário.

Segunda parte:

$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_POST, 1);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $vars);
curl_setopt( $ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt( $ch, CURLOPT_HEADER, 0);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec( $ch );
curl_close($ch);

Defino alguns valores para meu Curl, necessários para requisição

E no “curl_exec”, realizo o envio.

Se você deseja recuperar o retorno da página de destino, que pode ser um “json” por exemplo, adicione essa “curl_setopt” antes do curl_exec.

curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true);

Retorno você recupera na variável “response”.

Se o retorno for um JSON, você pode estar utilizando a função “json_decode” para transformar a String em um Array.

Observações:

  • Verifique se a extensão do Curl foi carregada corretamente utilizando o phpinfo(), caso alguma das funções não sejam encontradas.
  • Você pode utilizar o protocolo “https”.
  • Manual com todas as opts que podem ser configuradas na requisição: http://us2.php.net/manual/pt_BR/function.curl-setopt.php

Por Segurança:

  • Filtre os dados que serão enviados.
  • Valide na URL de Destino a origem da requisição.

 

Resumo
Como realizar uma requisição Post utilizando Curl no PHP
Nome do Artigo
Como realizar uma requisição Post utilizando Curl no PHP
Descrição
Realizando uma requisição Post utilizando cURL, com a biblioteca libcurl do PHP
Autor
Editor
Roger Mauricio Takemiya
Logo do Editor

Dúvidas? Faça um comentário logo abaixo ou envie uma mensagem clicando aqui.

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *