AMFPHP e AS3 para noobs

August 11th, 2008

Depois de passar um tempo longe dessa caceta de blog ( caceta no sentido carinhoso da palavra, ou se preferirem no feminio que não posso escrever ) tive dando uma estudada em AS3 bem a fundo e comecei a procurar um AMF (Action Message Format) para fazer comunicação do Flash com banco de dados e assim alimentar as aplicações de forma mais rápida sem aquele taaaaaaaanto de arquivos PHP para acessar banco e outros mil para enviar dados ao Flash.

Entre as formas pagas (Flash Media Server) e o grátis eu fiquei com o FREE claro. O danado em questão é um programa, gateway, que interpreta as classes colocadas dentro dele e retorna de forma fácil os dados para a aplicação, executando até coisas simples como um form de e-mail.

AMFPHP é um programa feito em PHP, como está no próprio nome, coisa idiota, com uma interface gráfica (Browser) criada no Flex onde podemos executar as aplicações sem necessariamente rodar a aplicação em Flash. Como eu já havia dito é grátis, basta acessar o site do AMFPHP e clicar em download par abaixar a última versão do programa, basta copiar para o server dentro do diretorio que preferir – por default:

www.dominio.com/amfphp

Para visualizar a parte gráfica, o browser das aplicações, basta acessar o endereço:

www.dominio.com/amfphp/browser

Segue imagem (preview) do Browser abaixo:

amfphp_one

Um exemplo simples para utilizar no AMFPHP é um form de email, onde nesse criamos um arquivo em PHP separado chamado de Email.php dentro dele criaremos a classe Email com a função _send como veremos no código abaixo:

<?php

class Email
{
        /**
        * Esse serviço ira enviar um formulario
        * @retorno true ou false se enviado ou nao
        */
        function send($to, $subject, $message){
                return mail($to, $subject, $message);
        }
}

?>

Com essa classe dentro do servidor dentro da pasta do AMFPHP, aperto dentro do Browser o botão de Refresh para visualizar a nova Classe “Email” criada essa pode ser executada dentro do proprio Browser somente preenchendo os campos ou do Flash que segue o source abaixo. Bem fácil de usar e não instala nada no servidor, vale a pena testar.

amfphp_two

Source em Flash (fla): Download

Espero que gostem e até breve.

Read too:

6 Responses to “AMFPHP e AS3 para noobs”

  1. Juliano Santos Says:

    Olá, muito bom seu artigo, parabéns, mas eu tenho uma dúvida, quanto a segurança de aplicações em flex, por causa do amfphp.
    Como no caso acima, se a classe php executasse uma função SQL, para a exlusão de informações em uma tabela de banco de dados, bastaria ao usuário mal intencionado, digitar a url no navegador, acessar o browser e digitar o id da informação a ser excluída.
    Como funciona a parte de segurança no lado do servidor, na pasta amfphp?

  2. Pablo Davi Says:

    O servidor amfphp funciona com o gateway.php e com os programas colocados na pasta services, essa pasta pode estar dentro de qualquer outra estrutura de pastas e você pode restringir o acesso à pasta services, que é onde ficam as classes, assim ninguem conseguirá fazer acesso. Agora a pasta browser onde podemos testar esses programas você pode trocar o nome da pasta, registringir acesso com senha – verificar possibilidade do servidor – assim fica seguro o uso desse programa.

  3. ingiltere dil okulu Says:

    agradecimentos para este local mas isn’ t ele availible em inglês?

  4. Pablo Davi Says:

    @inglitere this blog is only in portugueses language, yet. i ll soon post all in two languages and after only in english. Tks for the visit ‘n cya.
    x )

  5. Claudio Says:

    Pablo, fiz um formulário no Flash AS3 e estou processando os dados que estão chegando corretamente a minha caixa de correios. O que falta corrigir é que quando recebo a mensagem na minha caixa de correio o remetente que aparece é meu login no servidor e chega como se houvesse sido enviado desde meu-login@meu-server.

    Sabes como corrigir isso?.

    Claudio

  6. Pablo Davi Says:

    @Claudio, desculpe pela demora na resposta, eu estava de viagem essa semana. Você poder colocar na sua função MAIL do PHP alguns parametros a mais para poder tirar esse email e colocar um da sua escolha. Funciona da seguinte forma:

    1
    
    mail($to, $subject, $message, $headers);

    Sendo que $headers você pode criar uma ’string’ mais ou menos assim:

    1
    2
    3
    
    $headers = 'From: webmaster@example.com' . "\r\n" .
    'Reply-To: webmaster@example.com' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

    Trocando, logicamente, o e-mail para o desejado no seu caso, assim ele não virá com o nome de usuário@servidor.
    Qualquer coisa estamos ai e novamente desculpe pela demora a responder.

Leave a Reply