Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

henriqueilustrador

[Resolvido] inserir twitter no flash

Recommended Posts

Henrique,

alterei meu plano e agora o PHP está rodando,

agora o problema é no flash, só está aparecendo uma parte do post no twitter, já deixei a caixa de texto como multilinha e não resolveu, o que seria?

olha como está: www.brindesuniversitarios.com.br

está na parte inferior da home...

 

Espero que possa ajudar..

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

E aí pessoal!

 

Segui tudo que vcs falaram aí (aliás, agradeço muito) e consegui fazer o twitter aparecer no meu flash. Eu tenho uma hospedagem Linux na SoftHost e funcionou perfeitamente, porém fui colocar o mesmo modelo num site hospedado na Locaweb e não funciona de jeito nenhum.

 

O site tava hospedado em plataforma windows, e onde deveriam aparecer os posts do twitter, não aparecia nada. Transferi para plataforma linux e agora aparece uma mensagem de erro onde ficariam os tweets.

 

Alguém faz idéia do que pode ser?

 

Antes eu achava que Locaweb era muito boa, mas só tenho tido dor de cabeça com os sites hospedados lá... =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa tarde a todos, seguindo um tutorial que encontrei no youtube fiz o sistema de transferência de mensagens do flash para o twiter, funcionou bem, mas a única coisa estranha disso, tem hora que funciona e tem hora que fica em branco ou aparecendo erros, alguém sabe o porquê disso?

 

Segue os comandos pra quem quiser testar aí:

 

flash action script 3.0

 

ação:

 

stop();

 

import flash.net.URLRequest;

import flash.net.URLLoader;

 

 

var i:URLLoader = new URLLoader();

i.addEventListener (Event.COMPLETE, loaded);

i.load(new URLRequest("http://www.mandrake.net63.net/twitter/twitterphpfile.php"));

 

function loaded(e:Event):void{

e.currentTarget.removeEventListener(Event.COMPLETE, loaded);

var xml:XML = new XML(e.currentTarget.data);

var list:XMLList = new XMLList (xml.status.text);

box.text = list[0];

box2.text = list[1];

box3.text = list[2];

 

}

 

 

Para cada listagem criar uma caixa de texto dinâmica com o nome de box segundo a sequência conforme quantidade de mensagens que desejar que seja lista, exemplo 2 mensagens, primeira caixa de texto: box a segunda box 2 e por aí vai.

 

 

O twitterphpfile.php

 

<?php

$xmldata = 'http://twitter.com/statuses/user_timeline.xml?screen_name=seu_usuario';

$open = fopen($xmldata, 'r');

$content = stream_get_contents($open);

fclose($open);

echo $content;

?>

 

Funciona quase perfeito, só preciso decobrir por que tem hora que para de listar as mensagens, alguém saberia me explicar? Agradeço a atenção de todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Twitter só aceita 150 requisições por hora

 

Se passar disso ele não mostra mais e da erro.

Isso é a API do twitter... o que você pode fazer é cachear o XML e atualizar ele de 5 em 5 minutos

Ou salvar o XML com php e só puxar os dados denovo e atualizar de 5 em 5 minutos se diminuir o intervalo de 5 em 5 você pode chegar a ultrapassar 150 requisições por hora e ai vai cair no mesmo problema.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Twitter só aceita 150 requisições por hora

 

Se passar disso ele não mostra mais e da erro.

Isso é a API do twitter... o que você pode fazer é cachear o XML e atualizar ele de 5 em 5 minutos

Ou salvar o XML com php e só puxar os dados denovo e atualizar de 5 em 5 minutos se diminuir o intervalo de 5 em 5 você pode chegar a ultrapassar 150 requisições por hora e ai vai cair no mesmo problema.

 

Abraços

 

Agradeço a resposta, resumindo não tem como arrumar, sempre vai cair nesse erro, posso fazer um meta refresh no arquivo PHP de 5 minutos?

 

Valeu, abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer como eu faço

 

Eu busco o XML do twitter da informação que eu desejo... e salvo em meu servidor com PHP ou ASP

 

Coloco um if para verificar se a data atual e 5 minutos mais nova do que a data que o arquivo foi salvo... buscando a data de criação do arquivo

Se a data for 5 minutos mais nova... eu deleto o XML antigo... puxo o novo... e salvo denovo

 

E sempre mostro esse XML para o usuário.

 

Simples assim...

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer como eu faço

 

Eu busco o XML do twitter da informação que eu desejo... e salvo em meu servidor com PHP ou ASP

 

Coloco um if para verificar se a data atual e 5 minutos mais nova do que a data que o arquivo foi salvo... buscando a data de criação do arquivo

Se a data for 5 minutos mais nova... eu deleto o XML antigo... puxo o novo... e salvo denovo

 

E sempre mostro esse XML para o usuário.

 

Simples assim...

 

Abraços

 

Sem querer abusar da sua bondade, mas como ficaria no script mesmo? Agradeço de novo....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom se quer o script tem 2 opções ou tu faz ele :)

Como eu já falei... basta procurar pelo que eu disse que tem que fazer...

 

Ou tu compra ;)

 

Abraços

 

Agradeço a resposta, vou pesquisar, abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

porque você nao carrega um xml da sua rss?

 

xmlLoader.load("http://twitter.com/statuses/user_timeline/123072000.rss");

 

Muito mais simples :) e o flash é client side o twitter não vai bloquear o acesso do servidor mas sim do cliente e como o cliente não vai fazer mais de 150 requisiçõe por hora então ta sussa ^^

 

http://www.matthijskamstra.nl/blog/index.php/2009/12/30/twitter-rss-reader-in-flash-as3/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Errr...

 

Muitos sites tem sim usuários que fazem mais de 150 requisições por hora.

E ai como que fica? ;)

 

Quando parar de funcionar o rapaz vai reclamar :)

 

Abraços

 

Até agora não consegui fazer dar certo o twitter no flash, de início funciona mas depois fica em branco com todos os scripts que testei, você tem algum rodando funcional, caso tenha pode me passar o link, se estiver tudo ok podemos negociar $ o fla e o PHP? abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Boa noite, coloquei o sistema explicado pelo henriqueilustrador (agradeço a atitude que teve em postá-lo) e funcionou perfeitamente no meu servidor gratuito, aí postei no servidor pago, enviou mensagens de erros:

 

Warning: file_get_contents(http://twitter.com/statuses/user_timeline/cocacola.xml?count=3)[function.file-get-contents]:failed to open stream:

HTTP request failed! in /home/teste/www/twitter/twitter.php on line 17

 

 

Fatal error: Uncaught 'Exception' whith message 'String could note be parsed as XML 'in /home/teste/www/twitter/twitter.php on line 17

 

Stack trace

#0/home/teste/www/twitter/twitter.php (17)> SimpleXMLElement-

 

 

 

A linha 17 corresponde a esse comando:

 

$parsed = new SimpleXMLElement(file_get_contents($url));

 

Você saberia me explicar o motivo de estar acontecendo esse erro? Deve ser alguma configuração do servidor pago que não tem no gratuito, abri um ticket

solicitando uma correção pois o atendente não soube responder o motivo desse problema, mas o ruim que vai demorar um tempão pra responderem.

 

Agradeço a atenção mesmo, desculpe ficar lhe incomodando, abraço.

 

Com esse script sem interação do flash apenas PHP, coloquei nos dois servidores para teste:

 

<HTML>

<HEAD>

<TITLE>teste twitter</TITLE>

</HEAD>

<BODY>

<?

$url = 'http://twitter.com/statuses/user_timeline/cocacola.rss?count=5';

$xml = simplexml_load_file($url);

echo '<ol>';

foreach($xml->channel->item as $node){

 

printf('<li><a href="%s">%s</a></li>',

$node->link,

$node->title

);

}

echo '</ol>';

?>

</BODY>

</HTML>

 

No servidor gratuito mais uma vez funcionou sem probelmas, no pago envia esse erro:

 

 

Warning: simplexml_load_file(http://twitter.com/statuses/user_timeline/cocacola.rss?count=5) [function.simplexml-load-file]: failed to open stream: HTTP request failed! in /home/teste/www/twitter/twitter/twitter2.php on line 8

 

Warning: simplexml_load_file() [function.simplexml-load-file]: I/O warning : failed to load external entity "http://twitter.com/statuses/user_timeline/kinghost.rss?count=5" in /home/teste/www/twitter/twitter/twitter2.php on line 8

 

 

Warning: Invalid argument supplied for foreach() in /home/teste/www/twitter/twitter/twitter2.php on line 10

 

-Acessando alguns fóruns gringos foram mencionados:

 

php.ini -> permitir a extensão = php_openssl.dll

 

-Em outro fórum comentaram sobre o fuso horário configurado no servidor, sei lá se isso tem sentido, mas...

 

Estranho que em localhost utilizando wampserver também funcionam os scripts normalmente.

 

Alguém tem ideia do que está acontecendo?

 

Agradeço a todos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Simples você não tem acesso no PHP para rodar essas funções ;)

 

Provavelmente seu servidor está rodando em modo seguro no PHP

 

Contate a empresa que você tem serviços para que eles possam lhe ajudar com isso.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.