Archive
Ved Cookbook – episódio 5 – Relatório
Como capturar um snapshot de um gráfico no Flex, salvar a imagem no servidor e utilizá-la para gerar um relatório em PDF.
Dica: assista em tela cheia
Ved Cookbook – episódio 3 – Configurando e Utilizando o ZendAMF
Neste episódio será feita a configuração do ZendAMF, utilizado para conectar uma interface Flex ao PHP. O código gerado durante a gravação está disponível ao final do post.
Dica: assista em tela cheia.
Ved Cookbook – episódio 3 – ZendAMF from Fabio Vedovelli on Vimeo.
>
Livro Flex + PHP – Daniel Pace Schmitz
Saiu o novo livro do Daniel. Bora prestigiar o autor brasileiro, galera!
Resenha:
O livro Desenvolvendo Sistemas com Flex e PHP tem o objetivo de introduzir os principais conceitos sobre o desenvolvimento de um sistema web, utilizando as tecnologias PHP e Flex. Serão abordadas também outras tecnologias, tais como MySQL, AMFPHP, WAMPServer e CPanel. Ensina como criar um software desde o princípio, abordando todos os passos para a correta comunicação entre o Flex e o PHP, além de facilitar a programação e empregar a segurança necessária para diminuir a exposição de vulnerabilidades no software.
Também é abordada a união entre as empresas Adobe e Zend, que estão trabalhando juntas para a integração de suas tecnologias, proporcionando uma melhoria significativa entre o Flex o PHP.
Após a criação do software, o autor explica como colocar o software no ambiente de produção, por meio da ferramenta CPanel, conhecida mundialmente nos servidores de hospedagem que utilizam PHP e MySQL.
Screencast: Flex, PHP, AMFPHP e operações CRUD
CRUD significa Create, Retrieve, Update, Delete e são as 4 operações básicas que um sistema faz para administrar dados armazenados em um banco de dados. Tenho certeza que a grande maioria dos iniciantes têm dúvidas sobre como realizar estas operações no Flex, com AMFPHP e foi por isso que aproveitei o bom humor nesta sexta-feira para colocar capricho no screencast deste post.
Este é de longe o maior que já gravei (pouco mais de 1 hora de gravação) e quem chegar ao final ganha um doce! HUAHUAHUAHUAHU
Aproveitei também que fiz as pazes com o mapeamento de objetos e expliquei tintin por tintin. OK, com isso, espero que todas as duvidas sobre a utilização do AMFPHP sejam sanadas.
Um forte abraço,
Ved

Links:
Screencast: Mapeamento Objetos PHP – Flex no AMFPHP
Bem, desisti de fazer um exemplo simples e utilizei o projeto no qual estou trabalhando atualmente para gravar o Screencast sobre mapeamento de objetos no AMFPHP.
Links:
Screencast de Flex: Upload de arquivos com PHP
Hoje me dei conta que eu nunca tinha feito um screencast mostrando como fazer upload de um ou mais arquivos pelo Flex, usando PHP para tratar a alocação do arquivo enviado. Pois bem, aí está! Espero que aprendam direitinho!
É preciso estar com a mente aberta para o novo
Eu AMO PHP! Isso é fato! É a linguagem de programação que me colocou no mercado e que me fez fascinado pelo mundo da codificação! Qualquer coisa que eu precise, basta pesquisar no php.net que eu encontro. 10 vivas ao PHP.
Flex é a mesma coisa. A documentação nem é tão boa quanto a do PHP mas é excelente. Um verdadeiro curso sobre ActionScript e o MXML.
Neste quase 3 meses que estou em São Paulo e trabalhando naquela empresa de telecomunicações, tive contato diário com Java e seus programadores, que eu pensava serem xiitas até a morte, mas pelo que pude entender são apenas programadores de verdade, que seguem à risca os best practices e não gostam de gambiarra. Pois bem: essa convivência com a tecnologia me fez ficar bem curioso com tanta falação (sic) sobre ela. E fui pesquisar.
Passeei pela net e fui prestar atenção num artigo da Adobe, o qual li, reli, imprimi e fui tentar reproduzir na vida real. Para a minha surpresa, consegui de primeira, mérito – em partes – do ambiente Java que eu já tinha na minha máquina devido a exigências do meu emprego.
Fiquei pasmo com a simplicidade com que o BlazeDS conversa com o Flex, traduzindo os dados passados pela classe Java para classe Flex e vice-versa. Com poucos códigos eu já tinha uma operação completa de CRUD funcionando bem rapido.
Mas o que me inspirou a escrever este post foi o fato de que hoje eu acordei passando muito mal e decidi ficar em casa para me curar. No final da tarde eu melhorei, mas não tive disposição para ir para o emprego e fiquei aqui para terminar um sistema Flex + PHP que eu tava enrolando a tempos para fazer.
E me peguei digitando linhas e mais linhas de códigos PHP até me sentir cansado. Nessa hora fiquei imaginando como eu faria em Java etc. e tal e me deu vontade de escrever este post.
Sei que muitos vão dizer que a maioria das coisas que o Java faz o PHP tbem pode fazer, que existem frameworks para PHP e blá blá blá e por isso já abri o post mencionando que eu amo PHP. Para coisas simples e rápidas não tem linguagem melhor. Mas não se pode fechar os olhos para o fato de a Adobe, mesmo tendo sua própria tecnologia server-side, ou seja, o Coldfusion, apoia abertamente o desenvolvimento de Flex com Java: vide BlazeDS e o Live Cycle Data Services. Outro fato muito relevante é que o Actionscript 3 é praticamente um filho do java, tendo sua sintaxe muito parecida.
Pois bem, o fato é que animei de vez a aprender Java para integração com o Flex e agora ninguem me segura.
E tenho dito…
Ved
PHP: lendo e tratando informações vindas de um arquivo XML
As vezes me pergunto pq fico tanto tempo sem escrever aqui… acho tão bacana mostrar soluções para problemas simples que me tiraram o sono e que deve estar tirando de muitas pessoas…
Essa semana tive que ler um arquivo XML pelo PHP e foi uma luta conseguir alguma documentação simples. Mas finalmente consegui… nem me lembro aonde, pois pesquisei tanta coisa, que nem pude agradecer ao santo que postou o que eu precisava em seu blog.
Mas então aí vai, lembrando que a solução apenas funciona no PHP5. Não me darei ao trabalho de pesquisar nada com relação ao PHP4 pois prá mim já tá morto e enterrado. Nem OO ele é…
Bem, vejamos… vc pode ler um arquivo físico, com extensão .xml ou um php que retorna um XML.
É realmente muito simples:
1 2 3 4 5 6 7 8 | <?xml version="1.0" encoding="UTF-8"?> <root> <bandas> <nome>Asian Dub Foundation</nome> <nome>REM</nome> <nome>Everything But The Girl</nome> </bandas> </root> |
Temos aqui um xml muito simples, com uma tag root e outra de bandas, esta última contendo 3 children com os nomes das respectivas bandas. Eu quero então ler isso dentro do PHP para, por exemplo, inserir no banco de dados:
1 2 3 4 5 6 7 | <?php $xml = simplexml_load_file("arquivo.xml"); // Pode ser http://www.algumdominio.com/services/arquivo.xml for($i=0; $i < count($xml->bandas->nome); $i++) { echo $xml->bandas->nome[$i]."<br />"; } ?> |
Difícil??? Nada, né???
Um abração do Ved
[Update] 30/01/2008
Andei fazendo uns testes com a API do Last.fm (www.last.fm).
Link do XML: http://ws.audioscrobbler.com/1.0/user/vedovelli/topartists.xml?type=overall – retorna os 100 artistas mais ouvidos por mim, ilustre Vedovelli
Link para o resultado: http://www.vedsa.com.br/last.fm.php
E a codificação necessária:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | <?php // Carrega o arquivo XML, que pode ser local ou remoto. Neste caso, remoto de uma API pública $xml = simplexml_load_file("http://ws.audioscrobbler.com/1.0/user/vedovelli/topartists.xml?type=overall"); // Cria as HTML tags iniciais da página echo <<<EOD <!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=utf-8" /> <title>VEDOVELLI - Last.fm</title> </head> <body> EOD; // Faz um loop no arquivo XML criando as variáveis que // representarão os dados no HTML logo mais abaixo for($i=0; $i < count($xml->artist); $i++) { $image = $xml->artist[$i]->image; $rank = $xml->artist[$i]->rank; $name = $xml->artist[$i]->name; $url = $xml->artist[$i]->url; $playcount = $xml->artist[$i]->playcount; // Monta o HTML com os dados do XML echo "<div style='font-family: tahoma; font-size: 11px; width: 180px; height: 200px; float: left; text-align: center'>"; echo "<img src='$image' border='1' style='margin-right: 10px;' /><br /> \n"; echo "[$rank] <a href='$url' target='_blank'>$name</a><br />\n"; echo "Play count: $playcount<br />\n"; echo "<br /></div>"; } // Fecha as tags HTML da página echo "</body></html>"; ?> |
Listando diretórios via PHP
Uma coisa muito útil é poder listar diretórios, para abastecer por exemplo, um combobox. Pensando nisso, escrevi uma classe ridiculamente simples para tal aventura.
Baixe aqui a classe. As instruções de uso estão dentro do próprio arquivo. O retorno da classe é um array com a relação dos diretórios dentro da pasta indicada.
Caso alguem tenha alguma melhoria a propor, será bem vinda!
IMPORTANTE: é para PHP5 (CINCOOOOOOOOOOOOOOOOOOOOO)
Abração do Ved



