Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa noite, coloquei o sistema explicado pelo henriqueilustrador (agradeço a atitude que teve em postá-lo) no tópico: http://forum.imasters.com.br/index.php?/topic/350073-resolvido%26nbsp%3Binserir-twitter-no-flash/page__gopid__1624389entry1624389 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));
Alguém 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.
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.
PS: Abri outro tópico pois achei que esse assunto seria interessante uma dicussão separadamente, logo que fazendo pesquisas no google não achei nenhuma referência em português.
Agradeço a atenção mesmo, desculpe ficar incomodando, abraço.
Verifique no seu PHP.INI, localmente se a diretiva allow_url_fopen está habilitada (On).
Se estiver, pode ser que no seu servidor pago essa mesma dretiva está desativada (Off), o que impede o sucesso da primeira tarefa.
Os outros erros, são consequencias do primeiro.
Se for como penso, você tem três alternativas:
Atente que para a terceira alternativa, a Biblioteca cURL deve estar habilitada. Para saber se está, num arquivo PHP invocando phpinfo(), você procura por php_curl, que deve estar como Enabled.
Desculpa ter postado o tópico em local errado....
Fala Bruno, tudo bem?
No servidor local está ON
allow_url_fopen = On
Tentei através do htaccess executar essa mudança, porém a página até parou de carregar.
php_flag allow_url_fopen = On
Order allow,deny
Allow from all
--------------- Ponto de Mesclagem ---------------
Agradeço as respostas e vou pedir para verificarem no servidor pago, valeu, depois posto qual foi o resultado...
Por enquanto os reponsáveis pelo servidor disseram ainda não saber o que está restrigindo o acesso da API nos scripts que postei, porém acharam uma solução em java script que até funciona, mas não dá para integrar ao flash, como costumo desenvolver os sites usando essa tecnologia, acaba me limitando a não utilizar o sistema no site, vou aguardar para ver se eles conseguem acabar com essa restrição, se é possível...caso alguém tenha alguma ideia que possa ser feita no script ou usando htaccess agradeço...
Evite tentar fazer esses truques mirabolantes com .htaccess. Use-os apenas para o que eles devem ser usados.
Se o servidor bloqueou a diretiva alguma razão lunática eles devem ter. Cabe a você contornar elegantemente ou chutar o balde e procurar outro mais competente.
Esse tipo de atitude é até justificável em servidores gratuitos, mas não nos pagos.
A propósito, experimentou o cURL?
>
Evite tentar fazer esses truques mirabolantes com .htaccess. Use-os apenas para o que eles devem ser usados.
Se o servidor bloqueou a diretiva alguma razão lunática eles devem ter. Cabe a você contornar elegantemente ou chutar o balde e procurar outro mais competente.
Esse tipo de atitude é até justificável em servidores gratuitos, mas não nos pagos.
A propósito, experimentou o cURL?
Fala Bruno, tudo bem?
Entrei em contato com os responsáveis pelo servidor e disseram que nada podem fazer a respeito, é uma política deles a proibição de envio da forma que tentei, quanto a cURL, não sei como faz isso, como ficaria no meu script, muda muito? Agradeço a atenção, valeu mesmo.
Aí me enviaram um script em javascript que funciona mas não dá para integrar no flash, não é muito funcional pra mim, mas caso alguém esteja como o mesmo problema e precise implementar no site, só me avisar que envio o script.
Você jamais deve usar JavaScript onde DEVE usar PHP. Esse suporte não parece ter competência para lidar com situações referentes ao assunto.
Quanto à cURL, sim, Muda bastante pois você não vai usarapenas as funções nativas. Vai usaras funções nativas de uma biblioteca em particular.
Primeiro de tudo você deve tê-la habilitada. Execute o phpinfo() no seu servidor e procure por php_curl veja se está com status Enabled (Ativado)
Se tiver, basta estudar sobre ela através do Manual além de dezenas de outras dúvidas, muitas deleas até mesmo resolvidas, aqui no fórum mesmo.
Mas primeiro tente por você mesmo, tanto a desenvolver quanto a entender o funcionamento dela. E qualquer coisa, ajudamos, na medida do possível.
Olá lemandrake
esse assunto não é problema no flash, e sim do lado PHP
vou mover o tópico