<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7350064241880292834</id><updated>2011-11-27T17:04:34.858-08:00</updated><category term='Flex + PHP'/><title type='text'>Dheyson Wildny - Desenvolvimento para Web</title><subtitle type='html'>Flex com PHP</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dheysonws.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dheysonws.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Dheyson Wildny - Analista de Sistemas / Web Master</name><uri>http://www.blogger.com/profile/00450303812932431695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://1.bp.blogspot.com/_xFS_52D5VKE/SRkJCharfMI/AAAAAAAAACM/qWzRHwrylTM/S220/Flex.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>4</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7350064241880292834.post-8040037232153708283</id><published>2008-12-20T09:02:00.000-08:00</published><updated>2008-12-20T20:41:55.610-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flex + PHP'/><title type='text'>Populando Datagrid Flex com informações do MySQL – parte II</title><content type='html'>&lt;div&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;Olá a todos!&lt;br /&gt;&lt;/span&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;Vamos agora iniciar a segunda parte do nosso tutorial de conexão de Flex com MySQL e criar nossa aplicação flex para buscar as informações da base de dados.&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;1º. Passo:&lt;/strong&gt; Crie um novo projeto Flex com o nome de conexao. E no arquivo *.mxml principal costumo colocar o nome de index.mxml ao invés de deixar com o mesmo nome do projeto, fica a gosto de cada um. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_xFS_52D5VKE/SU0mnBBihVI/AAAAAAAAAFk/Egis9rCc0m4/s1600-h/imagem03.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5281920389707105618" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 274px" alt="" src="http://2.bp.blogspot.com/_xFS_52D5VKE/SU0mnBBihVI/AAAAAAAAAFk/Egis9rCc0m4/s320/imagem03.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_xFS_52D5VKE/SU0mnF5n3KI/AAAAAAAAAFs/35dmaNABvqM/s1600-h/imagem04.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5281920391016078498" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 289px" alt="" src="http://3.bp.blogspot.com/_xFS_52D5VKE/SU0mnF5n3KI/AAAAAAAAAFs/35dmaNABvqM/s320/imagem04.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;2º. Passo:&lt;/strong&gt; Colocar o arquivo services-config.xml dentro do projeto e configurar as propriedades do mesmo para apontar para ele. Em caso de dúvida nesta etapa basta consultar o tutorial sobre &lt;a href="http://dheysonws.blogspot.com/2008/11/configurando-adobe-flex-builder-amfphp.html"&gt;configuração do amfphp com flex.&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;3º. Passo:&lt;/strong&gt; Criar nossa hierarquia de DNS reverso como criamos dentro do services do amfphp, para armazenarmos nossas classes *.php, isto para que possamos trabalhar com o mapeamento de objetos *.php para *.as e vice-versa, caso tenha alguma dúvida sobre isto basta ler o tutorial sobre &lt;a href="http://dheysonws.blogspot.com/2008/11/mapeamento-flex-php-php-flex.html"&gt;mapeamento.&lt;/a&gt; O projeto deverá ficar com a estrutura parecida com a da imagem abaixo. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_xFS_52D5VKE/SU0mnTamrTI/AAAAAAAAAF0/OVf0QjKvIpY/s1600-h/imagem05.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5281920394644073778" style="WIDTH: 313px; CURSOR: hand; HEIGHT: 209px" alt="" src="http://3.bp.blogspot.com/_xFS_52D5VKE/SU0mnTamrTI/AAAAAAAAAF0/OVf0QjKvIpY/s320/imagem05.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;4º. Passo:&lt;/strong&gt; Nesta etapa vamos criar nossa classe &lt;em&gt;ActionScript&lt;/em&gt; para fazer o mapeamento. Vá em: &lt;em&gt;File -&gt; New -&gt; ActionScript Class.&lt;/em&gt; Dê o mesmo nome que foi dado para nossa classe *.php, ou seja, &lt;strong&gt;Cliente.as.&lt;/strong&gt; Esta classe &lt;em&gt;ActionScript&lt;/em&gt; que foi criada deverá estar dentro da pasta &lt;em&gt;valuesObjects&lt;/em&gt; que foi criada na etapa anterior. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_xFS_52D5VKE/SU0mnrMYBTI/AAAAAAAAAF8/h914nkQibG0/s1600-h/imagem06.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5281920401026843954" style="WIDTH: 292px; CURSOR: hand; HEIGHT: 320px" alt="" src="http://2.bp.blogspot.com/_xFS_52D5VKE/SU0mnrMYBTI/AAAAAAAAAF8/h914nkQibG0/s320/imagem06.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;5º. Passo:&lt;/strong&gt; Deixe o código-fonte da classe criada da seguinte forma:&lt;br /&gt;&lt;pre name="code" class="javascript"&gt;package br.com.conexao.valuesObjects&lt;br /&gt;{&lt;br /&gt;    /* Aponta para a classe do php */&lt;br /&gt;    [RemoteClass(alias="br.com.conexao.valueObjects.Cliente")]&lt;br /&gt;&lt;br /&gt;    [Bindable]&lt;br /&gt;    public class Cliente&lt;br /&gt;    {&lt;br /&gt;        public var id:int;&lt;br /&gt;        public var nome:String;&lt;br /&gt;&lt;br /&gt;        public function Cliente()&lt;br /&gt;        {&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;6º. Passo:&lt;/strong&gt; Agora vamos criar nossa classe de objeto remoto que será a responsável pela comunicação entre os objetos. Crie uma nova classe &lt;em&gt;ActionScript&lt;/em&gt; e dê o nome de &lt;strong&gt;ObjetoRemoto.as&lt;/strong&gt;, salve a classe dentro do diretório raiz do projeto, conforme imagem abaixo:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_xFS_52D5VKE/SU0mnmJ2ApI/AAAAAAAAAGE/rST5PMRFPEo/s1600-h/imagem07.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5281920399674049170" style="WIDTH: 271px; CURSOR: hand; HEIGHT: 320px" alt="" src="http://4.bp.blogspot.com/_xFS_52D5VKE/SU0mnmJ2ApI/AAAAAAAAAGE/rST5PMRFPEo/s320/imagem07.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;O código desta classe deverá ficar como descrito abaixo, deixei o código todo comentado para que facilite a compreensão, mas em caso de dúvida é só entrar em contato, ok?&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;pre name="code" class="javascript"&gt;package&lt;br /&gt;{&lt;br /&gt;    import mx.controls.Alert;&lt;br /&gt;    import mx.rpc.events.FaultEvent;&lt;br /&gt;    import mx.rpc.events.ResultEvent;&lt;br /&gt;    import mx.rpc.remoting.mxml.RemoteObject;&lt;br /&gt;&lt;br /&gt;    public class ObjetoRemoto&lt;br /&gt;    {&lt;br /&gt;        public function ObjetoRemoto(classe:String, metodo:String = null, funcao:Function = null, param:Object = null)&lt;br /&gt;        {&lt;br /&gt;            /* instancia um objeto remoto para conexão */&lt;br /&gt;            var remoteObj:RemoteObject = new RemoteObject("amfphp");&lt;br /&gt;            /* informa o nome da classe a se trabalhar "spacename.classname */&lt;br /&gt;            remoteObj.source = classe;&lt;br /&gt;            /* exibe o relógio na tela enquanto envia a requisição */&lt;br /&gt;            remoteObj.showBusyCursor = true;&lt;br /&gt;            /* verifica se ouve alguma falha */&lt;br /&gt;            remoteObj.addEventListener(FaultEvent.FAULT, retornaFalha);&lt;br /&gt;            /* pega o retorno da função */&lt;br /&gt;            if (funcao != null)&lt;br /&gt;                remoteObj.addEventListener(ResultEvent.RESULT, funcao);&lt;br /&gt;            /* envia a requisicao ao gateway */&lt;br /&gt;            if (metodo != null)&lt;br /&gt;            {&lt;br /&gt;                if (param != null)&lt;br /&gt;                    remoteObj.getOperation(metodo).send(param);&lt;br /&gt;                else&lt;br /&gt;                    remoteObj.getOperation(metodo).send();&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        private function retornaFalha(evt:FaultEvent):void&lt;br /&gt;        {&lt;br /&gt;            Alert.show("Ocorreu o seguinte erro ao tentar executar o método:\n"+evt.fault.message, "Erro");&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;}&lt;/pre&gt;&lt;br /&gt;Pronto, agora nosso projeto já está configurado e mapeado de forma correta para que possamos trabalhar. Na terceira e última parte veremos como chamar as informações para o datagrid.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Abraço a todos e até breve! &lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7350064241880292834-8040037232153708283?l=dheysonws.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dheysonws.blogspot.com/feeds/8040037232153708283/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://dheysonws.blogspot.com/2008/12/populando-datagrid-flex-com-informaes_3604.html#comment-form' title='6 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/8040037232153708283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/8040037232153708283'/><link rel='alternate' type='text/html' href='http://dheysonws.blogspot.com/2008/12/populando-datagrid-flex-com-informaes_3604.html' title='Populando Datagrid Flex com informações do MySQL – parte II'/><author><name>Dheyson Wildny - Analista de Sistemas / Web Master</name><uri>http://www.blogger.com/profile/00450303812932431695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://1.bp.blogspot.com/_xFS_52D5VKE/SRkJCharfMI/AAAAAAAAACM/qWzRHwrylTM/S220/Flex.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_xFS_52D5VKE/SU0mnBBihVI/AAAAAAAAAFk/Egis9rCc0m4/s72-c/imagem03.jpg' height='72' width='72'/><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7350064241880292834.post-82346149395182559</id><published>2008-12-20T08:12:00.001-08:00</published><updated>2008-12-20T20:40:57.150-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flex + PHP'/><title type='text'>Populando Datagrid Flex com informações do MySQL – parte I</title><content type='html'>&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;Olá pessoal...&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;Me desculpem pela ausência durante as últimas semanas mas estive em um período de transições mas agora, voltei com força total para tentar passar o que sei a vocês.&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;Nesta semana, seguindo um roteiro lógico depois dos primeiros tutoriais que escrevi vou mostrar como retornar dados do MySQL para um datagrid em Flex, para que não fique muito extenso este tutorial, eu o divide em 3 partes. Então sem mais delongas vamos ao que interessa!&lt;/span&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#333333;"&gt;&lt;b&gt;1º. Passo:&lt;/b&gt; Configurar os softwares necessários, em caso de dúvida basta acessar o tutorial sobre de configuração &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://dheysonws.blogspot.com/2008/11/configurando-adobe-flex-builder-amfphp.html"&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;clicando aqui. &lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p align="justify"&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#333333;"&gt;&lt;b&gt;2º. Passo:&lt;/b&gt; Criar a tabela de dados que vamos utilizar para armazenar as informações, basta copiar o código abaixo e executar em seu gerenciador de banco de dados.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="sql"&gt;CREATE DATABASE `conexao`;&lt;br /&gt;USE `conexao`;&lt;br /&gt;DROP TABLE IF EXISTS `clientes`;&lt;br /&gt;CREATE TABLE `clientes` (&lt;br /&gt;   `id` int(11) NOT NULL auto_increment,&lt;br /&gt;   `nome` varchar(40) NOT NULL,&lt;br /&gt;   PRIMARY KEY (`id`)&lt;br /&gt;) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1;&lt;br /&gt;&lt;br /&gt;insert into `clientes`(`id`,`nome`) values (1,'Dheyson'),(2,'José'),(3,'Maria'),(4,'Júlio'),(5,'Marcos'),(6,'Eliana'),(7,'Cláudia'),(8,'Joaquim'),(9,'Carla'),(10,'Márcia');&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#333333;"&gt;&lt;b&gt;3º. Passo:&lt;/b&gt; Nesta etapa vou mostrar a vocês uma classe de conexão genérica com o banco de dados MySQL, muito útil em meus desenvolvimentos. Vou demonstrar o apenas o código fonte da classe, pois se for explicar passo-a-passo todo código vou fugir ao foco do tutorial, mas me coloco a disposição para qualquer esclarecimento em caso de dúvidas.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;pre name="code" class="php"&gt;&lt;br /&gt;&lt;?php  &lt;br /&gt;&lt;br /&gt;    /* Classe responsável pela conexão com o banco */&lt;br /&gt;    class Conn {&lt;br /&gt;    &lt;br /&gt;        /* Variáveis Globais */&lt;br /&gt;        private $servidor;&lt;br /&gt;        private $usuario;&lt;br /&gt;        private $senha;&lt;br /&gt;        private $banco;&lt;br /&gt;        private $conn;&lt;br /&gt;        private $resultado;&lt;br /&gt;        private $sql;&lt;br /&gt;&lt;br /&gt;        /* Método Construtor */&lt;br /&gt;        public function Conn($server, $user, $pass, $banco) {&lt;br /&gt;            $this-&amp;gt;setServidor($server);&lt;br /&gt;            $this-&amp;gt;setUsuario($user);&lt;br /&gt;            $this-&amp;gt;setSenha($pass);&lt;br /&gt;            $this-&amp;gt;setBanco($banco);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /* Sets */&lt;br /&gt;        public function setServidor($server) {&lt;br /&gt;            $this-&amp;gt;servidor = $server;&lt;br /&gt;        }&lt;br /&gt;        public function setUsuario($user) {&lt;br /&gt;            $this-&amp;gt;usuario = $user;&lt;br /&gt;        }&lt;br /&gt;        public function setSenha($pass) {&lt;br /&gt;            $this-&amp;gt;senha = $pass;&lt;br /&gt;        }&lt;br /&gt;        public function setBanco($banco) {&lt;br /&gt;            $this-&amp;gt;banco = $banco;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /* Método que abre a conexão com o Banco de Dados */&lt;br /&gt;        public function connDB() {&lt;br /&gt;            $this-&amp;gt;Conn = mysql_connect($this-&amp;gt;servidor, $this-&amp;gt;usuario, $this-&amp;gt;senha);&lt;br /&gt;            if(!$this-&amp;gt;Conn) {&lt;br /&gt;                echo "&amp;lt;p&amp;gt;N&amp;amp;atilde;o foi poss&amp;amp;iacute;vel conectar-se ao servidor MySQL. &amp;lt;br&amp;gt;Erro MySQL: ".mysql_error()."&amp;lt;/p&amp;gt;";&lt;br /&gt;                exit();&lt;br /&gt;            } elseif (!mysql_select_db($this-&amp;gt;banco, $this-&amp;gt;&lt;u&gt;Conn&lt;/u&gt;)) {&lt;br /&gt;                echo "&amp;lt;p&amp;gt;N&amp;amp;atilde;o foi poss&amp;amp;iacute;vel selecionar o banco de dados desejado. &amp;lt;br&amp;gt;Erro MySQL: ".mysql_error()."&amp;lt;/p&amp;gt;";&lt;br /&gt;                exit();&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /* Método que fecha a conexão com o Banco de Dados */&lt;br /&gt;        public function closeConnDB() {&lt;br /&gt;            return mysql_close($this-&amp;gt;Conn);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /* Método que executa comando SQL */&lt;br /&gt;        public function runQuery($sql) {&lt;br /&gt;            $this-&amp;gt;connDB();&lt;br /&gt;            $this-&amp;gt;sql = $sql;&lt;br /&gt;            if($this-&amp;gt;resultado = mysql_query($this-&amp;gt;sql)) {&lt;br /&gt;                $this-&amp;gt;closeConnDB();&lt;br /&gt;                return $this-&amp;gt;resultado;&lt;br /&gt;            } else {&lt;br /&gt;                exit("&amp;lt;p&amp;gt;N&amp;amp;atilde;o foi poss&amp;amp;iacute;vel executar o comando solicitado. &amp;lt;br&amp;gt;Erro MySQL: ".mysql_error()."&amp;lt;/p&amp;gt;");&lt;br /&gt;                $this-&amp;gt;closeConnDB();&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /* Método instância um objeto da classe de conexão */&lt;br /&gt;        static public function conexao(){&lt;br /&gt;            $con = new Conn('localhost', 'root', '123456', 'conexao');&lt;br /&gt;            return $con;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;?&gt;&lt;/pre&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#333333;"&gt;&lt;b&gt;4º. Passo:&lt;/b&gt; Salve a classe acima demonstrada com o nome de &lt;b&gt;Conn.php&lt;/b&gt; dentro do diretório: &lt;b&gt;...\amfphp\services\vo\br\com\conexao\valuesObjects &lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh6.ggpht.com/_xFS_52D5VKE/SU0Yzx4NloI/AAAAAAAAAFU/gDx4dnGKTts/imagem01%5B8%5D.jpg"&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;&lt;img style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height="193" alt="imagem01" src="http://lh3.ggpht.com/_xFS_52D5VKE/SU0Y91uqLnI/AAAAAAAAAFY/_tyjYg1Rk5I/imagem01_thumb%5B4%5D.jpg" width="211" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#333333;"&gt;&lt;b&gt;5º. Passo:&lt;/b&gt; Vamos criar uma classe para manipular a tabela clientes que foi criada em nossa base de dados. Salve esta classe com o nome de &lt;b&gt;Cliente.php&lt;/b&gt; dentro do mesmo diretório demonstrado no 4º. Passo. O código da classe deverá ficar conforme descrito abaixo.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;?php&lt;br /&gt;    include_once("Conn.php");&lt;br /&gt;&lt;br /&gt;    /* Classe responsável pelo tratamento dos clientes */&lt;br /&gt;    class Cliente {&lt;br /&gt;&lt;br /&gt;        /* Aponta para classe ActionScript do projeto Flex */&lt;br /&gt;        public $_explicitType = "br.com.conexao.valueObjects.Cliente";&lt;br /&gt;&lt;br /&gt;        /* Variáveis globais */&lt;br /&gt;        public $id;&lt;br /&gt;        public $nome;&lt;br /&gt;&lt;br /&gt;        /* Método Construtor */&lt;br /&gt;        public function Cliente() {}&lt;br /&gt;&lt;br /&gt;        /* Sets */&lt;br /&gt;        public function setId($cod) {&lt;br /&gt;            $this-&amp;gt;id = $cod;&lt;br /&gt;        }&lt;br /&gt;        public function setNome($name) {&lt;br /&gt;            $this-&amp;gt;nome = $name;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /* Gets */&lt;br /&gt;        public function getId() {&lt;br /&gt;            return $this-&amp;gt;id;&lt;br /&gt;        }&lt;br /&gt;        public function getNome() {&lt;br /&gt;            return $this-&amp;gt;nome;&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        /* Acessos ao banco de dados&lt;br /&gt;           Aqui o php recebe o retorno do MySQL e retorna ao Flex um Array com os registros da consulta.&lt;br /&gt;        */&lt;br /&gt;        public function buscarTodos() {&lt;br /&gt;            Conn::conexao()-&amp;gt;connDB();&lt;br /&gt;            $resultado = Conn::conexao()-&amp;gt;runQuery("select * from clientes order by nome");&lt;br /&gt;            $i=0;&lt;br /&gt;            while ($obj = mysql_fetch_object($resultado)) {&lt;br /&gt;                $cli = new Cliente();&lt;br /&gt;                $cli-&amp;gt;setId($obj-&amp;gt;id);&lt;br /&gt;                $cli-&amp;gt;setNome($obj-&amp;gt;nome);&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;$retornoArray[$i] = $cli;&lt;br /&gt;                $i++;&lt;br /&gt;            }&lt;br /&gt;            return $retornoArray;&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;?&gt;&lt;br /&gt;&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;A parte de back-end já esta completa. A hierarquia de arquivos deve ter ficado conforme a imagem abaixo:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://lh3.ggpht.com/_xFS_52D5VKE/SU0ZHyPCHpI/AAAAAAAAAFc/Nb3XERrclnc/imagem02%5B2%5D.jpg"&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;&lt;img style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height="141" alt="imagem02" src="http://lh3.ggpht.com/_xFS_52D5VKE/SU0ZQGzRcZI/AAAAAAAAAFg/k9vRFdUieAk/imagem02_thumb.jpg" width="244" border="0" /&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;Ok terminado estas etapas daremos seguimento na parte II, onde vamos criar nossas classes ActionScript e preparar nosso projeto Flex para acesso às informações do banco. Até lá e abraço a todos.&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7350064241880292834-82346149395182559?l=dheysonws.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dheysonws.blogspot.com/feeds/82346149395182559/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://dheysonws.blogspot.com/2008/12/populando-datagrid-flex-com-informaes_20.html#comment-form' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/82346149395182559'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/82346149395182559'/><link rel='alternate' type='text/html' href='http://dheysonws.blogspot.com/2008/12/populando-datagrid-flex-com-informaes_20.html' title='Populando Datagrid Flex com informações do MySQL – parte I'/><author><name>Dheyson Wildny - Analista de Sistemas / Web Master</name><uri>http://www.blogger.com/profile/00450303812932431695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://1.bp.blogspot.com/_xFS_52D5VKE/SRkJCharfMI/AAAAAAAAACM/qWzRHwrylTM/S220/Flex.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/_xFS_52D5VKE/SU0Y91uqLnI/AAAAAAAAAFY/_tyjYg1Rk5I/s72-c/imagem01_thumb%5B4%5D.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7350064241880292834.post-9181165863769680782</id><published>2008-11-13T08:51:00.000-08:00</published><updated>2008-12-18T20:26:34.780-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flex + PHP'/><title type='text'>Mapeamento Objetos Flex - PHP, PHP - Flex no Amfphp</title><content type='html'>&lt;div align="justify"&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;Olá a todos! &lt;/span&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;&lt;br /&gt;&lt;br /&gt;Bom esta semana como assunto para o meu segundo tutorial pensei em criar um projeto que faça conexão com banco de dados, já que na semana passada fizemos a integração entre flex e php, mas comecei desenvolver um projeto na empresa em que trabalho e necessitei fazer o mapeamento das minhas classes php para o flex, ou melhor, mapear meus "&lt;em&gt;Values Objects&lt;/em&gt;". E na minha busca por material sobre o assunto percebi que ainda tem poucos exemplos de como se fazer isto. Então mãos a obra! &lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;1º. Passo:&lt;/strong&gt; Vamos criar nosso diretório que irá armazenar os valuesObjects (vo) .php. Por &lt;em&gt;default&lt;/em&gt; o amfphp traz como diretório para os &lt;em&gt;valuesObjects&lt;/em&gt; o diretório&lt;strong&gt; "services/vo/"&lt;/strong&gt; como poderemos confirmar no arquivo &lt;strong&gt;globals.php&lt;/strong&gt; dentro do diretório raiz do amf. Então vamos respeitar a regra e criar nosso objetos lá dentro:&lt;br /&gt;Crie uma hierarquia de diretórios dento da pasta services do amfphp, semelhante a estrutura de projetos em flex, ou seja, DNS reverso que no caso do nosso exemplo ficará da seguinte forma:&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;...amfphp\services\vo\br\com\mapFlexPhp\valuesObjects&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_xFS_52D5VKE/SRx4PqiuyrI/AAAAAAAAADQ/QC7IfLzjwUI/s1600-h/01.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268217874629970610" style="WIDTH: 200px; CURSOR: hand; HEIGHT: 151px" alt="" src="http://3.bp.blogspot.com/_xFS_52D5VKE/SRx4PqiuyrI/AAAAAAAAADQ/QC7IfLzjwUI/s200/01.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;2º. Passo:&lt;/strong&gt; Crie dentro da pasta &lt;em&gt;valuesObjects&lt;/em&gt; um arquivo chamado: &lt;strong&gt;usuario.php&lt;/strong&gt; com a seguinte estrutura:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_xFS_52D5VKE/SRx45XM16xI/AAAAAAAAAD4/GDdakiSRUpA/s1600-h/02.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268218590992395026" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 355px" alt="" src="http://1.bp.blogspot.com/_xFS_52D5VKE/SRx45XM16xI/AAAAAAAAAD4/GDdakiSRUpA/s400/02.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Obs.:&lt;/strong&gt; O método criado pode ser testado no browser do amfphp, caso não saiba como testar pode dar uma olhada no tutorial que explica como configurar flex, amfphp e php: &lt;a href="http://dheysonws.blogspot.com/2008/11/configurando-adobe-flex-builder-amfphp.html"&gt;Configurando Flex + Amfphp + PHP&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:arial;font-size:85%;color:#333333;"&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;3º. Passo: &lt;/strong&gt;Crie um projeto no Flex chamado &lt;strong&gt;mapFlexPhp&lt;/strong&gt; para testarmos o mapeamento: File -&gt; New -&gt; Flex Project.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_xFS_52D5VKE/SRx4fS30KYI/AAAAAAAAADg/L1ydVowK27g/s1600-h/03.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268218143153858946" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 290px" alt="" src="http://4.bp.blogspot.com/_xFS_52D5VKE/SRx4fS30KYI/AAAAAAAAADg/L1ydVowK27g/s320/03.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_xFS_52D5VKE/SRx4fpWHYYI/AAAAAAAAADo/CeeSFCl4_WM/s1600-h/04.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268218149186527618" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 290px" alt="" src="http://4.bp.blogspot.com/_xFS_52D5VKE/SRx4fpWHYYI/AAAAAAAAADo/CeeSFCl4_WM/s320/04.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;4º. Passo:&lt;/strong&gt; Crie uma estrutura de classes semelhante a que criamos para o objeto &lt;strong&gt;.php&lt;/strong&gt; dentro da pasta &lt;strong&gt;src&lt;/strong&gt; do projeto que criamos: &lt;strong&gt;...\src\br\com\mapFlexPhp\valuesObjects &lt;/strong&gt;&lt;/div&gt;&lt;strong&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;/strong&gt;&lt;a href="http://4.bp.blogspot.com/_xFS_52D5VKE/SRx4P-fe4bI/AAAAAAAAADY/bjNxfXgUxDs/s1600-h/05.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268217879985054130" style="WIDTH: 200px; CURSOR: hand; HEIGHT: 152px" alt="" src="http://4.bp.blogspot.com/_xFS_52D5VKE/SRx4P-fe4bI/AAAAAAAAADY/bjNxfXgUxDs/s200/05.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;5º. Passo:&lt;/strong&gt; Crie um arquivo &lt;em&gt;Action Script Class&lt;/em&gt; dentro da pasta que criamos, chamado &lt;strong&gt;usuario.as&lt;/strong&gt; com a seguinte estrutura: &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_xFS_52D5VKE/SRx45ZfGnoI/AAAAAAAAAEA/y-A_Xde7iOQ/s1600-h/06.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268218591605857922" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 180px" alt="" src="http://2.bp.blogspot.com/_xFS_52D5VKE/SRx45ZfGnoI/AAAAAAAAAEA/y-A_Xde7iOQ/s400/06.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;strong&gt;Obs.: &lt;/strong&gt;Este arquivo é um “espelho” da classe que criamos em php. &lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;6º. Passo:&lt;/strong&gt; Vamos agora criar um formulário no Flex que irá receber os usuários gerados através do nosso método PHP. No arquivo &lt;strong&gt;.mxml principal&lt;/strong&gt; do nosso projeto vamos desenhar um layout para receber os dados semelhante ao da imagem abaixo, que contem um botão e um dataGrid: &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_xFS_52D5VKE/SRx4gHEOKPI/AAAAAAAAADw/-hHxjJ30BHQ/s1600-h/07.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268218157164538098" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 242px" alt="" src="http://1.bp.blogspot.com/_xFS_52D5VKE/SRx4gHEOKPI/AAAAAAAAADw/-hHxjJ30BHQ/s320/07.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Complete os códigos do nosso arquivo .mxml para ficar semelhante ao que esta apresentado na próxima imagem: &lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_xFS_52D5VKE/SRx458ATfLI/AAAAAAAAAEI/KY5BiGuLQ3c/s1600-h/08.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5268218600871918770" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 370px" alt="" src="http://1.bp.blogspot.com/_xFS_52D5VKE/SRx458ATfLI/AAAAAAAAAEI/KY5BiGuLQ3c/s400/08.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;&lt;strong&gt;7º. Passo:&lt;/strong&gt; Compile o projeto e clique no botão Buscar Usuários... pronto, você retornou para o dataGrig objetos do tipo usuário. &lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Arquivos do projeto para download: &lt;a href="http://sites.google.com/site/dwdevelopersite/blog/mapFlexPHP.rar" target="_blank"&gt;mapFlexPHP.rar&lt;/a&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;&lt;br /&gt;Você agora provavelmente deve estar se perguntando para que todo este trabalho, não é? Bom com este tipo de mapeamento você tem um controle muito maior dos objetos em sua aplicação, porque você estará trabalhando com objetos de tipos especificos com atributos e tipos corretos, e não mais com objetos genéricos. E sem contar o quanto facilita nas transações CRUD (Create, Retrieve, Update and Delete) com o banco de dados, entre outras vantagens. Vale a pena dar uma olhada em algum material referente a RPC (&lt;em&gt;Remote Procedure Call&lt;/em&gt; - Chamada de Procedimento Remoto).&lt;br /&gt;&lt;br /&gt;Tentei fazer um projeto o mais simples possível, mas este é um assunto bastante complexo então as vezes pode parecer um "bixo de 7 cabeças", mas digo a você que não é!&lt;/div&gt;&lt;div align="justify"&gt;&lt;/div&gt;&lt;div align="justify"&gt;Um grande abraço e até a próxima!!!&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7350064241880292834-9181165863769680782?l=dheysonws.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dheysonws.blogspot.com/feeds/9181165863769680782/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://dheysonws.blogspot.com/2008/11/mapeamento-flex-php-php-flex.html#comment-form' title='5 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/9181165863769680782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/9181165863769680782'/><link rel='alternate' type='text/html' href='http://dheysonws.blogspot.com/2008/11/mapeamento-flex-php-php-flex.html' title='Mapeamento Objetos Flex - PHP, PHP - Flex no Amfphp'/><author><name>Dheyson Wildny - Analista de Sistemas / Web Master</name><uri>http://www.blogger.com/profile/00450303812932431695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://1.bp.blogspot.com/_xFS_52D5VKE/SRkJCharfMI/AAAAAAAAACM/qWzRHwrylTM/S220/Flex.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_xFS_52D5VKE/SRx4PqiuyrI/AAAAAAAAADQ/QC7IfLzjwUI/s72-c/01.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7350064241880292834.post-6313665996921730281</id><published>2008-11-07T11:10:00.000-08:00</published><updated>2008-11-13T11:29:55.988-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flex + PHP'/><title type='text'>Configurando Adobe Flex Builder + AMFPHP + PHP</title><content type='html'>&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt;Olá pessoal, meu nome é Dheyson Wildny sou Analista de Sistemas e trabalho com desenvolvimento há 4 anos, atualmente com as linguagens PHP5 OO / Ajax / CSS e cuido de um portal na área da saúde &lt;/span&gt;&lt;a href="http://www.indiq.com.br/"&gt;&lt;span style="font-size:85%;color:#595959;"&gt;www.indiq.com.br&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Acordei hoje (07/11/2008) e percebi que já estava passando da hora de compartilhar o que aprendi nestes anos com quem está começando a desenvolver, daí pensei, vou falar sobre o quê? Com tantos sites que falam sobre o assunto na net, mas acho que ajuda nunca é demais, e então cheguei a seguinte conclusão: Flex tem sido umas das mais promissoras ferramentas para web dos últimos anos, e porque então, não comecei estudar isto até hoje? Não obtive resposta, mas não adianta chorar o tempo perdido, então, mãos a obra!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Na semana passada tive o primeiro contato direto com a ferramenta e vou dizer que não parece ser nenhum “bixo de sete cabeças” não.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Hoje vou começar explicando passo-a-passo como configurar o Flex Builder 3, com o remoting Amfphp 1.9 e o back-end em PHP 5 OO.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;V&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;amos lá:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;1º. Passo:&lt;/span&gt;&lt;/b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt; Baixar e instalar o Flex Builder 3.0 no site da Adobe, existe uma versão trial free por 60 dias ou se preferir pode baixar o pluging do flex para o eclipse, que é a mesma coisa e totalmente free (para instalar o Flex&lt;br /&gt;Builder... next, next, next, finish. rsrs...).&lt;br /&gt;&lt;b&gt;link trial free:&lt;/b&gt; &lt;/span&gt;&lt;a href="http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3email"&gt;&lt;span style="font-size:85%;color:#595959;"&gt;&lt;a href="http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3email"&gt;http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3email&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;2º. Passo:&lt;/span&gt;&lt;/b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt; Baixar o Amfphp 1.9 (.zip).&lt;br /&gt;&lt;/span&gt;&lt;a href="http://sourceforge.net/project/showfiles.php?group_id=72483&amp;amp;package_id=72363&amp;amp;release_id=541961"&gt;&lt;span style="font-size:85%;color:#595959;"&gt;http://sourceforge.net/project/showfiles.php?group_id=72483&amp;amp;package_id=72363&amp;amp;release_id=541961&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;3º. Passo:&lt;/span&gt;&lt;/b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt; Baixar o PHP 5 e configurá-lo (não entrarei muito em detalhes de como fazer isto, mas vou deixar&lt;br /&gt;aqui o link de um ótimo artigo de como configurar: Apache + PHP 5 + MySQL, qualquer dúvida podem entrar em contato comigo por e-mail).&lt;/span&gt;&lt;br /&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;a href="http://www.plugmasters.com.br/sys/materias/243/1/Instalando-Apache-%2B-MySQL-%2B-PHP-5-no-Windows"&gt;&lt;span style="font-size:85%;color:#595959;"&gt;http://www.plugmasters.com.br/sys/materias/243/1/Instalando-Apache-%2B-MySQL-%2B-PHP-5-no-Windows&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;4º. Passo:&lt;/span&gt;&lt;/b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt; Descompacte o arquivo Amfphp 1.9.zip para uma pasta chamada amfphp dentro do htdocs do apache (diretório onde ficam os arquvios .php) como na figura abaixo:&lt;/span&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;a href="http://1.bp.blogspot.com/_xFS_52D5VKE/SRSTviU01vI/AAAAAAAAAAo/h1o8ZwF69dU/s1600-h/1.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265996309180241650" style="WIDTH: 227px; CURSOR: hand; HEIGHT: 320px" alt="" src="http://1.bp.blogspot.com/_xFS_52D5VKE/SRSTviU01vI/AAAAAAAAAAo/h1o8ZwF69dU/s320/1.jpg" border="0" /&gt;&lt;/a&gt; &lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt;Para finalizar a instalação do amfphp digite na janela do seu navegador: &lt;/span&gt;&lt;a href="http://localhost/amfphp/browser"&gt;&lt;span style="font-size:85%;color:#595959;"&gt;http://localhost/amfphp/browser&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;,&lt;br /&gt;deverá aparecer a seguinte janela configuração:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;a href="http://2.bp.blogspot.com/_xFS_52D5VKE/SRSUYQAiecI/AAAAAAAAAA4/6Sxn56y8b7s/s1600-h/2.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265997008637950402" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 151px" alt="" src="http://2.bp.blogspot.com/_xFS_52D5VKE/SRSUYQAiecI/AAAAAAAAAA4/6Sxn56y8b7s/s320/2.jpg" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Marque as opções como na imagem acima e clique em Save. Pronto o Amfphp está “instalado”, dificil não é??&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;5º. Passo:&lt;/span&gt;&lt;/b&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt; Para facilitar minha vida e evitar que eu fique com arquivos duplicados no meu pc, eu costumo definir meu&lt;br /&gt;diretório de “workspace” para o mesmo diretório onde os arquivos são compilados, mas isso vai de cada um. &lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Abra o Flex Builder vá em &lt;b&gt;File &lt;/b&gt;-&gt;&lt;b&gt;Switch Workspace &lt;/b&gt;-&gt; &lt;b&gt;Other...&lt;/b&gt; no campo workspace coloque o caminho da pasta browser localizada dentro da pasta amfphp que acabamos de descompactar, no meu caso: C:\Arquivos de programas\Apache Software Foundation\Apache2.2\htdocs\amfphp\browser&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Prontinho, tudo configurado e funcionando!&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Vamos agora criar um projeto simples para mostrar um “Hello world” vindo do PHP para o Flex!&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt;Vá em &lt;b&gt;File&lt;/b&gt; -&gt; &lt;b&gt;New&lt;/b&gt; -&gt; &lt;b&gt;Flex Project&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_xFS_52D5VKE/SRSXDVx8fSI/AAAAAAAAABA/D75bFELMrN0/s1600-h/3.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265999947944983842" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 288px" alt="" src="http://4.bp.blogspot.com/_xFS_52D5VKE/SRSXDVx8fSI/AAAAAAAAABA/D75bFELMrN0/s320/3.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Dê o nome de FlexHelloWorld e deixe as configurações como acima, no seu caso provavelmente a opção “Use default location” estará selecionada, deixe-a como estiver, depois clique em next.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_xFS_52D5VKE/SRSXDuNbQRI/AAAAAAAAABI/JvohjmE7b5g/s1600-h/4.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265999954502697234" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 288px" alt="" src="http://4.bp.blogspot.com/_xFS_52D5VKE/SRSXDuNbQRI/AAAAAAAAABI/JvohjmE7b5g/s320/4.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Clique em Browse..., encontre a pasta browser dentro de amfphp e crie uma nova pasa com o mesmo nome do projeto: FlexHelloWorld&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt;No Root URL deverá constar o caminho de acesso no browser do seu projeto, no nosso caso o camingo acima, após isto clique em &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;b&gt;Validade Configuration&lt;/b&gt; depois em &lt;b&gt;Finish&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Agora copie um arquivo chamado&lt;b&gt; services-config.xml&lt;/b&gt; que se encontra dentro da pasta &lt;b&gt;browser&lt;/b&gt; do amf para a pasta raiz do projeto criado. Depois que copiar abra o arquivo e no caminho da uri, coloque: &lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Courier New';color:#595959;"  &gt;&lt;a href="http://localhost/amfphp/gateway.php"&gt;&lt;span style="font-size:85%;color:#595959;"&gt;http://localhost/amfphp/gateway.php&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;, como na imagem&lt;/span&gt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_xFS_52D5VKE/SRSYxHhIC9I/AAAAAAAAABw/PBn3QrBnENs/s1600-h/5.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5266001833901951954" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 174px" alt="" src="http://3.bp.blogspot.com/_xFS_52D5VKE/SRSYxHhIC9I/AAAAAAAAABw/PBn3QrBnENs/s400/5.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Feito isto clique com o botão direito sobre o projeto criado e selecione a opção properties, como na imagem:&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_xFS_52D5VKE/SRSXEK_5VZI/AAAAAAAAABY/FUuPuGYtQiQ/s1600-h/6.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265999962230576530" style="WIDTH: 182px; CURSOR: hand; HEIGHT: 320px" alt="" src="http://4.bp.blogspot.com/_xFS_52D5VKE/SRSXEK_5VZI/AAAAAAAAABY/FUuPuGYtQiQ/s320/6.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt;Na janela que abrir selecione: &lt;b&gt;Flex Compiler&lt;/b&gt; e na caixa &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;b&gt;Additional compiler arguments&lt;/b&gt; adicione &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;b&gt;-services "../services-config.xml" &lt;/b&gt;e ok, como mostra a figura abaixo.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_xFS_52D5VKE/SRSXEN9kq_I/AAAAAAAAABg/TPZiNQobxL8/s1600-h/7.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5265999963026140146" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 278px" alt="" src="http://3.bp.blogspot.com/_xFS_52D5VKE/SRSXEN9kq_I/AAAAAAAAABg/TPZiNQobxL8/s320/7.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Pronto o Flex Builder está pronto para receber informações, vamos agora criar nossa classe .php&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Crie um arquivo chamado Hello.php e salve dentro da pasta services do amfphp (é lá que são armazenados os arquivos de back-end). Deixe o código deste arquivo da seguinte forma:&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;?php&lt;/span&gt;&lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#595959;"&gt;&lt;span style="LINE-HEIGHT: 115%"&gt;class Hello {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;font-size:85%;color:#595959;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#595959;"&gt;&lt;span style="LINE-HEIGHT: 115%"&gt;public function HelloWorld() {&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;font-size:85%;color:#595959;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;font-size:85%;color:#595959;"&gt;&lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:Arial;font-size:85%;color:#595959;"   &gt;return "Hello World!";&lt;/span&gt;&lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;font-size:85%;color:#595959;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color:#595959;"&gt;&lt;span style="LINE-HEIGHT: 115%"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="font-family:Arial;font-size:85%;color:#595959;"&gt;&lt;/span&gt; &lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;}&lt;/span&gt;&lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;?&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';color:#595959;"  &gt;&lt;span style="font-size:85%;"&gt;Ok! Agora vamos testar nosso método para ver se realmente esta funcionando, digite &lt;/span&gt;&lt;a href="http://localhost/amfphp/browser"&gt;&lt;span style="font-size:85%;color:#595959;"&gt;http://localhost/amfphp/browser&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt; no seu navegador. Deverá aparecer desta forma, quando selecionar Hello e clicar em Call:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_xFS_52D5VKE/SRSYJsQIL-I/AAAAAAAAABo/e7StjqSNUGA/s1600-h/8.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5266001156568002530" style="WIDTH: 320px; CURSOR: hand; HEIGHT: 231px" alt="" src="http://1.bp.blogspot.com/_xFS_52D5VKE/SRSYJsQIL-I/AAAAAAAAABo/e7StjqSNUGA/s320/8.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Pronto agora só falta chamar o método no Flex. Digite nas linhas de comando do arquivo FlexHelloWorld.mxml como na imagem abaixo:&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_xFS_52D5VKE/SRSYxSaDpVI/AAAAAAAAAB4/yEq_497U4io/s1600-h/9.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5266001836825093458" style="WIDTH: 400px; CURSOR: hand; HEIGHT: 246px" alt="" src="http://3.bp.blogspot.com/_xFS_52D5VKE/SRSYxSaDpVI/AAAAAAAAAB4/yEq_497U4io/s400/9.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Agora é só pressionar Ctrl+F11 (compilar) e ver o resultado!&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Bom espero ter sido bem claro e ter ajudado com este meu primeiro &lt;/span&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;tutorial, qualquer dúvida me coloco a disposição!&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="Section1" align="justify"&gt;&lt;span style="LINE-HEIGHT: 115%;font-family:'Arial','sans-serif';font-size:85%;color:#595959;"   &gt;Abraço e até a próxima!!!&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7350064241880292834-6313665996921730281?l=dheysonws.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dheysonws.blogspot.com/feeds/6313665996921730281/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://dheysonws.blogspot.com/2008/11/configurando-adobe-flex-builder-amfphp.html#comment-form' title='7 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/6313665996921730281'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7350064241880292834/posts/default/6313665996921730281'/><link rel='alternate' type='text/html' href='http://dheysonws.blogspot.com/2008/11/configurando-adobe-flex-builder-amfphp.html' title='Configurando Adobe Flex Builder + AMFPHP + PHP'/><author><name>Dheyson Wildny - Analista de Sistemas / Web Master</name><uri>http://www.blogger.com/profile/00450303812932431695</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='30' height='32' src='http://1.bp.blogspot.com/_xFS_52D5VKE/SRkJCharfMI/AAAAAAAAACM/qWzRHwrylTM/S220/Flex.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_xFS_52D5VKE/SRSTviU01vI/AAAAAAAAAAo/h1o8ZwF69dU/s72-c/1.jpg' height='72' width='72'/><thr:total>7</thr:total></entry></feed>
