content top


Postar no Twitter via Php/Curl

Postar no Twitter via Php/Curl





Um cliente precisava cadastrar notícias em seu site e também automaticamente posta-la no Twitter. Para isso utilizei a API do Twitter desenvolvendo o codigo em php/curl.

Codigo para postagem:

 //url da api  
 $url="http://twitter.com/statuses/update.json";
 ?>

//mensagem  
 $status="Postando no twitter";   

//Login e senha do twitter
   $login="login_twitter";
   $senha="senha_twitter";
 
   $data = array('status' => $status);
 
   foreach($data as $key=>$value) { $fields_string .= $key.'='.$value.'&'; }
   rtrim($fields_string,'&');
 

//parametros necessarios para executar o curl corretamente
   $sessao_curl = curl_init();
   curl_setopt($sessao_curl, CURLOPT_URL, $url);
   curl_setopt($sessao_curl, CURLOPT_HEADER, 1);
   curl_setopt($sessao_curl, CURLOPT_USERPWD, $login:$senha);
   curl_setopt($sessao_curl, CURLOPT_POST, 1);
   curl_setopt($sessao_curl, CURLOPT_POSTFIELDS, $fields_string);
   curl_setopt($sessao_curl, CURLOPT_RETURNTRANSFER, 1);
 
 //executa curl
   $rr = curl_exec($sessao_curl);

//terminando curl
   curl_close($sessao_curl);

   echo "Postado com sucesso";

Pessoal o twitter mudou a forma da sua autenticação e esse script não funciona mais!
Fiz um novo post sobre o assunto:

http://www.coisasuteis.com.br/2010/11/postando-no-twitter-via-php-com-nova-autenticacao-do-twitter-oauth/


Feed RSS para comentários sobre este post. TrackBack URL

Deixe um comentário


10 comentários »



  1. avatar comment-top
    Internet Explorer 8.0 Internet Explorer 8.0 Windows 7 x64 Edition Windows 7 x64 Edition
    comment-bottom
  2. avatar
    gilberto escreveu:
    11 de novembro de 2010 as 23:49
    comment-top
    Firefox 3.6.12 Firefox 3.6.12 Windows XP Windows XP
    hey cara tive a testar seu codigo e diz postado com sucesso mas nao posta nada!sabe porque?me contacte para este email coelhinhasaidinha@gmail.com obrigado
    comment-bottom
  3. avatar comment-top
    Firefox 3.6.8 Firefox 3.6.8 Windows 7 Windows 7
    Aqui não funcionou não… ele escreve “postado com sucesso” mas não posta no twitter …
    comment-bottom
  4. avatar comment-top
    Firefox 3.6.8 Firefox 3.6.8 Windows 7 Windows 7
    huumm..blz! vou tentar resolver aqui, mas se tu souber de alguma solução..posta ai!

    Abraço!

    comment-bottom
  5. avatar comment-top
    Internet Explorer 8.0 (Compatibility Mode) Internet Explorer 8.0 (Compatibility Mode) Windows 7 x64 Edition Windows 7 x64 Edition
    Na verdade o que você colou não é erro e sim o codigo php, muito estranho…
    comment-bottom
  6. avatar comment-top
    Firefox 3.6.8 Firefox 3.6.8 Windows 7 Windows 7
    Pedro, tudo bem! Só uma coisa, quando eu copio e colo esse teu código no meu editor ele da alguns erros, nas seguintes linhas:

    $data = array(‘status’ => $status);

    foreach($data as $key=>$value) { $fields_string .= $key.’=’.$value.’&’; }

    curl_setopt($sessao_curl, CURLOPT_USERPWD, $login:$senha);

    Tem ideia do que pode ser?

    comment-bottom
  7. avatar comment-top
    Internet Explorer 8.0 (Compatibility Mode) Internet Explorer 8.0 (Compatibility Mode) Windows 7 x64 Edition Windows 7 x64 Edition
    Opa Diogo, o post ensina exatamente como fazer isso, depois do insert dos seus produtos vocÊ deve incluir o script acima com a variavel $status a informação do seu produto…
    comment-bottom
  8. avatar comment-top
    Firefox 3.6.8 Firefox 3.6.8 Windows 7 Windows 7
    Oi! Tenho um site de anúncio de produtos, quero que quando meu funcionário cadastrar um novo produto pelo sistema administrativo do meu site automaticamente seja postado no twitter que um novo produto se encontra a disposição no meu site? Tem como fazer isso Pedro? Se sim, como?

    Abs.

    comment-bottom
  9. avatar comment-top
    Internet Explorer 8.0 Internet Explorer 8.0 Windows 7 x64 Edition Windows 7 x64 Edition
    Aqui está funcionando perfeito, coloque o charset do html:

    charset=utf-8

    comment-bottom
  10. avatar
    Renato escreveu:
    7 de março de 2010 as 17:01
    comment-top
    Firefox 3.6 Firefox 3.6 Windows XP Windows XP
    Não funciona acentos com esse exemplo

    se souber como colocar os centos de forma clara me avise por emial

    comment-bottom