Utilizando o cUrl para postar dados em uma URL – Dica PHP

Publicado em Guia Nerd, Hacker, PHP agosto 25th, 2009 por: Lucas – 4 Commentarios



Esta classe serve para enviar dados via post para uma url. Ela utiliza o cUrl, portanto para utilizá-la verifique se seu host libera o uso da mesma para url´s externas .xD

A classe:

/**
 * Classe  para envio de dados via post
 * @author Lucas Nishimura
 */
class Post2Url {

	private $url = "";
	private $cUrl;
	private $reponse = "";
	private $timeout = 5;
	private $params = array();

	function __construct($url) {
		$this->setUrl ( $url );
		$this->initCurl();
	}

	public function getTimeout() {
		return $this->timeout;
	}

	public function setTimeout($timeout) {
		$this->timeout = $timeout;
	}

	private function initCurl() {
		$this->setCUrl ( curl_init () );
		curl_setopt ( $this->getCUrl (), CURLOPT_URL, $this->getUrl () );
		curl_setopt ( $this->getCUrl (), CURLOPT_RETURNTRANSFER, 1 );
		curl_setopt ( $this->getCUrl (), CURLOPT_CONNECTTIMEOUT, $this->getTimeout () );
	}

	public function getParams() {
		return $this->params;
	}

	public function addParam($paramName,$ParamValue){
		$this->params[$paramName] = $ParamValue;
	}

	public function sendData(){
		curl_setopt($this->getCUrl(), CURLOPT_POSTFIELDS, $this->params);
		return curl_exec($this->getCUrl());
	}

	public function getCUrl() {
		return $this->cUrl;
	}

	public function getReponse() {
		return $this->reponse;
	}

	public function getUrl() {
		return $this->url;
	}

	public function setCUrl($cUrl) {
		$this->cUrl = $cUrl;
	}

	public function setReponse($reponse) {
		$this->reponse = $reponse;
	}

	public function setUrl($url) {
		$this->url = $url;
	}

}

Um exemplo de como utilizar:

 //Include da classe
require_once 'Post2Url.php';
//Instância um novo objeto
$teste = new Post2Url("http://www.nishisan.com.br/code/testedump.php");
 //Adiciona o parâmetro login com valor lucas
$teste->addParam("login","lucas");
 //Adiciona o parâmetro pass com valor teste
$teste->addParam("pass","teste");
//Envia os dados xD
echo $teste->sendData();

O Caminho do exemplo acima existe e pode ser usado para testes ele retorna um dump do que você enviar para o servidor.Caso tenham dúvidas comentem.

4 Comments on “ Utilizando o cUrl para postar dados em uma URL – Dica PHP ”

  • Paulo
    agosto 25th, 2009 11:45 pm

    Lucas…Olha pra gente lá no msnhack!
    o arquivo tah off amigo

    ajude-nos postando o original. Please

  • Lucas
    agosto 26th, 2009 11:18 pm

    Testei os links e estão todos ok….

  • Paulo
    agosto 27th, 2009 12:25 am

    Boa noite amigo!
    Desculpe se estou sendo chato…nao é minha intenção

    mas este link tah off! :x
    http://msnhacker.fileave.com/msnhack.txt
    O resto tah ok mesmo…
    Realmente preciso recuperar meu messenger…uso pra trabalho!

    Obrigado!!

    Paulo

  • Anônimo
    agosto 27th, 2009 2:58 am

    Paulo :
    Boa noite amigo!
    Desculpe se estou sendo chato…nao é minha intenção
    mas este link tah off! :x
    http://msnhacker.fileave.com/msnhack.txt
    O resto tah ok mesmo…
    Realmente preciso recuperar meu messenger…uso pra trabalho!
    Obrigado!!
    Paulo

    Desculpe foi erro meu!!!!
    Era problema de servidor…usei um proxy e baixei tranquilo….Porem a senha aparece Encriptada ainda…tem como voce testar novamente Please….
    Agradeço desde ja sua colaboracao!
    Genta assim faz a diferença ;)

Leave a Reply