- Como Criar Um Site, Blog – WebMaster.pt - http://www.webmaster.pt -

Escrevendo No Twitter Usando O PHP

Tweet [3]

Quem já não pensou em postar matérias no Twitter, Orkut, enviar mensagens por MSN e tantos outros Sistemas sem tanto esforço ou apenas usar um sistema pessoal para postar mensagens em tais sistemas?

Como todos já sabem, o Twitter é uma rede social que permite que seus usuários enviem mensagens de texto de até 140 caracteres.

Estudando sobre o assunto e testando soluções, criei um script prático, rápido, sem muita burocracia onde você pode usar para enviar suas mensagens ou implementar a um sistema próprio facilmente!

Abaixo estaremos mostrando em apenas 2 curtos scripts como você pode enviar as mensagens ao seu Twitter e em anexo postamos o ficheiro completo!

Página index.php

Bem… se você é programador e pretende “implementar” seu sistema com a função de envio de mensagem ao Twitter, nem vai precisar dessa página, pois preparei mesmo a página “index.php” para facilitar o uso de quem quer usar o sistema para envio de sua casa ou escritório com maior facilidade!

A utilização é simples: Basta apenas preencher os campos “usuario”, “senha” e “mensagem” (conforme a imagem a seguir).

Preenchendo os campos

Vamos analisar o ficheiro?


<?php

$usuario = $_GET["usuario"];
?>

<!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>
<title>.:: WebMaster.PT :: Escrevendo Mensagem no Twitter ::.</title>
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="description" content="Envie uma mensagem para seu Twitter de modo fácil e rápido" />
<meta name="keywords" content="twitter,mensagem,instantânea,blog" />
<link rel="stylesheet" type="text/css" href="layout_blog.css">
<script type="text/javascript" src="<strong>curvycorners.js</strong>"></script>
<!-- JavaScript que arredonda os cantos da DIV para IE -->
<script type="text/JavaScript">
  window.onload = function() {
    var settings = {
      tl: { radius: 20 },
      tr: { radius: 20 },
      bl: { radius: 20 },
      br: { radius: 20 },
      antiAlias: true
    }

    var divObj = document.getElementById("DIV");

    curvyCorners(settings, divObj);
  }

</script>

<!-- Função que conta os caracteres do Textarea -->
<script type="text/javascript">
function contachars(){
    document.forms[0].caracteres.value = 140-document.forms[0].msg_twitter.value.length;
    if (document.forms[0].caracteres.value < 0){
    window.alert("Ultrapassou 140 caracteres, digite novamente! ");
    document.forms[0].msg_twitter.value="";
    document.forms[0].caracteres.value =140;
    return false;}
    else{
    return true;}
}
function checaform(){
if (document.forms[0].usuario.value == ""){
    window.alert("Não pode haver campos em branco")
    return false;}
if (document.forms[0].senha.value == ""){
    window.alert("Não pode haver campos em branco")
    return false;}
if (document.forms[0].msg_twitter.value == ""){
    window.alert("Não pode haver campos em branco")
    return false;}
}
</script>
</head>

<body>
<div id="box">
<div id="topo">
<span class="logo">
<?
if ($usuario != ''){
?>
<span class="usr"><a href="http://twitter.com/<?php echo"$usuario";?>" target="_blank">Clique aqui</a> para acessar o Twitter de: <?php echo"$usuario";?></span>
<?}?>
</span>
</div>
<div id="cadastro">
<form action="twitter_envia.php" method="post" name="form" onSubmit="return checaform()">
<input type="text" name="usuario" size="20" maxlength="30"/><span class="dados">Usuario do Twitter</span>
<input type="password" name="senha" size="20" maxlength="20"/><span class="dados">Senha do Twitter</span>
<textarea name="msg_twitter" class="msg_twitter" cols="35" rows="5" onKeyDown="contachars()" onKeyUp="contachars()"></textarea>
<input type="text" name="caracteres" size="3" maxlength="3" value="140" class="caracteres"/>
<div id="botao">
<input type="submit" name="submit" value="POST"/>
<input type="reset" name="reset" value="Limpar"/>
</div>
</form>
</div>
</div>
</body>
</html>

Após preencher todos os campos, o sistema enviará o ficheiro ao script “twitter_envia.php” (disponível a seguir).

Ele será dividido em 4 partes:

- Resgata variáveis da página anterior
- Se o Usuário e a Senha informado forem corretos, ele abrirá a porta 80
- Publica os dados informados
- Envia mensagem de confirmação e redireciona o ficheiro


<?
#Mensagem a ser enviada, assim como o usuário e senha resgatados da página anterior
$usuario = $_POST['usuario'];
$senha   = $_POST['senha'];
$msg     = $_POST['msg_twitter'];

$out = "POST http://twitter.com/statuses/update.json HTTP/1.1\r\n";
$out .= "Host: twitter.com\r\n";

$out .= "Authorization: Basic ".base64_encode ($usuario.':'.$senha)."\r\n";

$out .= "Content-type: application/x-www-form-urlencoded\r\n";
$out .= "Content-length: ".strlen ("status=$msg")."\r\n";
$out .= "Connection: Close\r\n\r\n";
$out .= "status=$msg";

$fp = fsockopen ("twitter.com", 80);
fwrite($fp, $out);
fclose($fp);

if ($fp){
?>
<script language="JavaScript">
alert('Mensagem enviada com sucesso !!!');
</script>
<meta HTTP-EQUIV='Refresh' CONTENT='0; URL=index.php?usuario=<?=$usuario;?>'>
<?
}
?>

Confirmação e Redirecionamento

Bem… após postar a mensagem e redirecionar o conteúdo ao seu conteúdo, veja que na página inicial, aparece o nome do usuário que postou o conteúdo e a mensagem “Clique Aqui”, lhe dando a opção de visitar a página junto ao Twitter (conforme imagem a seguir).

Retornando para a página inicial

Usando este sistema, fiz uma publicação em meu Twitter, Vamos verificar como ficou?

Verificando o cadastro na página

Prático, não?

Bem… de início minha intenção foi desenvolver em Zend FrameWorks ou Curl (como vários desenvolvedores fazem por aí), mas ao criar esta solução, procurei ao máximo elaborar algo sem muita dificuldade, de forma que você pudesse usar em seu sistema no dia a dia.

Espero que esta matéria venha lhe ajude em algo! Se você gostou desta matéria ou tiver sugestões para as próximas publicações, poste abaixo seu comentário!

Escrevendo No Twitter Usando O PHP [4]

Tweet [3]
Be Sociable, Share!
  • [5]
  • [6]
  • [7]
  • [8]
  • [9]