No
final deste tutorial está o arquivo com a API para download, não
esqueça de baixá-lo, senão será impossível fazer a publicação no
Twitter.
Utilizaremos aqui dois arquivos, a API e o arquivo
index.php, que é o responsável por receber o texto do post e chamar a
função da API que fará a publicação do texto no twitter. Estes arquivos
deverão estar na mesma pasta para que funcione. Caso estejam em pastas
diferentes, será preciso especificar o endereço completo da pasta.
index.php
Abaixo o código, comentado, da página index.php.
<?php
// parâmetros de acesso ao twitter
$twitter_username ='usuario';
$twitter_psw ='senha';
// Checagem do envio pelo método POST
require('twitterAPI.php'); // chama a API do Twitter
if(isset($_POST['twitter_msg'])){
$twitter_message=$_POST['twitter_msg'];
if(strlen($twitter_message)<1){
$error=1;
} else {
$twitter_status=postToTwitter($twitter_username, $twitter_psw, $twitter_message);
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Enviando um post para o Twitter</title>
<style type="text/css">
body{font-family: 'Verdana';; font-size:14px; color:#666666;}
h2{color:#000000;}
h3{color:#000000; font-size:14px;}
p{font-size:12px; color:#333333;}
input{font-size:18px; color:#444444;}
a:link, a:visited, a:hover{color:#0033CC;}
a:hover{text-decoration:none;}
div.footer{padding:6px; border-top:solid 1px #DEDEDE; font-size:10px;}
div.msg{background:#FFFFCC; margin-bottom:10px; padding:4px;}
div.code{padding:10px;
background:#FFFFCC; font-size:11px; color:#000000; margin-bottom:20px;
width:300px; border:solid 1px #CCCCCC;}
</style>
</head>
<body>
<h2>Enviando um post para o Twitter</h2>
<!-- Formulário para envio do POST para o twitter -->
<?php
//verifica se ocorreu ou não algum erro
//se não ocorreu envia para o twitter e mostra mensagem de sucesso
//se ocorreu mostra a mensagem de erro
if(isset($_POST['twitter_msg']) && !isset($error)){?>
<div class="msg"><?php echo $twitter_status ?></div>
<?php } else if(isset($error)){?>
<div class="msg">Erro: Digite a mensagem!</div>
<?php }?>
<p><strong>O que você está fazendo?</strong></p>
<form action="insertTwitterMsg.php" method="post">
<input name="twitter_msg" type="text" id="twitter_msg" size="40" maxlength="140" />
<input type="submit" name="button" id="button" value="Enviar" />
</form>
<!-- FIM -->
</body>
</html>
API do Twitter
Abaixo
está o código da API, ela utiliza CURL para o envio das informações.
Ela permite o acesso a informações de outros sites e/ou páginas,
disponibilizando também diversas opções de uso.
<?php
function postToTwitter($username,$password,$message){
$host = "http://twitter.com/statuses/update.xml?status=".urlencode(stripslashes(urldecode($message)));
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $host);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERPWD, "$username:$password");
curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt($ch, CURLOPT_POST, 1);
$result = curl_exec($ch);
$resultArray = curl_getinfo($ch);
curl_close($ch);
//As linhas abaixos servem apenas para imprimir na tela as informações do envio
if($resultArray['http_code'] == "200"){
$twitter_status='Seu post foi enviado com sucesso! <a href="http://twitter.com/'.$username.'">Veja seu perfil</a>';
} else {
$twitter_status="Erro ao enviar para o Twitter, tente novamente.";
}
return $twitter_status;
}
?>
Agora
que você já conhece os dois arquivos necessários para fazer essa
integração, use sua criatividade e aplique de variadas formas esse
conhecimento.
Arquivo anexo: Clique aqui para download