<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Maestros del Web &#187; Carlos Chávez García</title>
	<atom:link href="http://www.maestrosdelweb.com/author/carlos-chavez/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.maestrosdelweb.com</link>
	<description>Un espacio para los entusiastas del web</description>
	<pubDate>Mon, 06 Oct 2008 22:41:21 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.2</generator>
	<language>en</language>
			<item>
		<title>Bienvenido sea Apollo</title>
		<link>http://www.maestrosdelweb.com/editorial/apollo/</link>
		<comments>http://www.maestrosdelweb.com/editorial/apollo/#comments</comments>
		<pubDate>Mon, 26 Mar 2007 07:00:14 +0000</pubDate>
		<dc:creator>Carlos Chávez García</dc:creator>
		
		<category><![CDATA[Desarrollo Web]]></category>

		<category><![CDATA[Editorial]]></category>

		<category><![CDATA[Flash]]></category>

		<category><![CDATA[Software Propietario]]></category>

		<category><![CDATA[Tendencias]]></category>

		<guid isPermaLink="false">http://www.maestrosdelweb.com/editorial/apollo/</guid>
		<description><![CDATA[Adobe lanzo públicamente la versión Alpha hasta ahora denominada Adobe Apollo. En este artículo compartimos una introducción e instalación de aplicaciones Apollo.
Apollo es un RunTime multiplataforma para desarrollar aplicaciones de escritorio utilizando lenguajes enfocados para web tales como Flex, Flash, HTML, CSS, Javascript. Dándole la oportunidad a todos los desarrolladores de aplicaciones web para desarrollar [...]]]></description>
			<content:encoded><![CDATA[<p><span class='intro'>Adobe lanzo públicamente la versión Alpha hasta ahora denominada Adobe Apollo. En este artículo compartimos una introducción e instalación de aplicaciones Apollo.<span><span id="more-2356"></span></p>
<p><img src='http://www.maestrosdelweb.com/images/logo_apollo.jpg' alt='logo_apollo.jpg' class='lateral' />Apollo es un RunTime multiplataforma para desarrollar aplicaciones de escritorio utilizando lenguajes enfocados para web tales como Flex, <a href="http://www.maestrosdelweb.com/editorial/flash/">Flash</a>, <a href="http://www.maestrosdelweb.com/editorial/htmlhis/">HTML</a>, <a href="http://www.maestrosdelweb.com/editorial/introcss/">CSS</a>, Javascript. Dándole la oportunidad a todos los desarrolladores de aplicaciones web para desarrollar directamente en el escritorio del usuario.</p>
<p>Apollo al ser multiplataforma podrá ejecutar sus aplicaciones en diferentes sistemas operativos como: <a href="http://www.maestrosdelweb.com/principiantes/historia-de-windows/">Windows</a>, Mac OS y Linux, por el momento esta versión Alpha solo puede ser usada en Windows y Mac OS. Sin duda abre la brecha para que las aplicaciones de escritorio tradicionales cambien en su diseño y/o estructura, ya que permitirá traer todo el potencial de Flash/Flex directamente al escritorio. </p>
<p>Así mismo la facilidad de comunicación con lenguajes de servidor será muy grande, ya que Flash/Flex cuentan con diversos recursos para intercambiar información con el servidor para utilizar infinidad de lenguajes tales como Java, <a href="http://www.maestrosdelweb.com/editorial/phpintro/">PHP</a>, <a href="http://www.maestrosdelweb.com/editorial/aspintro/">ASP</a> etc. Ademas con la ventaja que existen gateways para el intercambio de información binaria entre el cliente y el servidor, como AMFPHP para nombrar uno.</p>
<h3>Cómo instalar Apollo</h3>
<p>Los archivos de instalación creados por Apollo tienen la extensión .air, que como hemos mencionado pueden ser instalados en Windows y Mac. El modo de instalación de las aplicaciones es muy familiar a cualquier otra. A continuación <a href="http://labs.adobe.com/downloads/apolloruntime.html">descargar el archivo</a> e iniciar los pasos siguientes:</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_install_p1.jpg' alt='apollo_install_p1.jpg' /></p>
<p>Lanza la típica ventana en donde nos pregunta si queremos instalar la aplicación, si queremos agregar el icono en el escritorio y si deseamos que se incluya en el menú de inicio. </p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_install_p2.jpg' alt='apollo_install_p2.jpg'  /></p>
<p>Una vez terminada la instalación el mensaje de instalación completa salta a la vista.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_install_p3.jpg' alt='apollo_install_p3.jpg' /></p>
<p>Con estos tres pasos sencillos tenemos instaladas las aplicaciones creadas con Apollo, Ahora veamos como desarrollar aplicaciones con el ya famoso HelloWorld.</p>
<h3>Desarrollando con Apollo</h3>
<p>Sin duda la mayor ventaja que ofrece Apollo es que utiliza plataformas y/o lenguajes para web, haciendo que cualquier persona con un dominio medio de estas plataformas/lenguajes pueda dar el salto al desarrollo de aplicaciones de escritorio.</p>
<p>La mejor manera de desarrollar aplicaciones para Apollo es utilizar Flex Builder 2.0.1 un entorno de desarrollo basado en eclipse. Las ventajas de Flex son bastantes, componentes robustos, total manipulación de la apariencia de la aplicación y componentes por medio de estilos CSS y por supuesto ActionScript 3.</p>
<p>Para desarrollar aplicaciones con apollo recomiendo hacerlos a través de Flex Builder para ello necesitaras descargar lo siguiente:</p>
<ul>
<li><a href="http://www.adobe.com/products/flex/" title="Flex">Flex Builder</a></li>
<li><a href="http://labs.adobe.com/technologies/apollo/" title="Apollo"> El RunTime de Apollo</a></li>
<li><a href="http://labs.adobe.com/technologies/apollo/" title="Apollo"> Flex Apollo Extensions</a></li>
</ul>
<p>Las extensiones de Apollo para Flex contiene entre otras cosas 6 componentes nuevos: 4 para navegación del filesystem y 2 para integrar HTML dentro de nuestra aplicación. Apollo también cuenta con APIs para accesar a funciones y recursos de la máquina local.</p>
<ul>
<li>WINDOW API</li>
<li>FlieSystem API</li>
<li>Connect/Disconnect API No 	disponible en la versión Alpha</li>
<li>Aplication Update Api</li>
</ul>
<p>En el próximo artículo veremos estos componentes y APIs más a fondo.</p>
<h3>Hello World Apollo</h3>
<p>Veamos como es crear una pequeña aplicación en Apollo utilizando Flex Builder: una vez que tengamos lo necesario indicado anteriormente. </p>
<p>Abrimos Flex Builder y veremos una interfaz tripanel, en el panel izquierdo, panel de proyectos, haremos clic derecho y aparecerá un menú del cual escogeremos la opción “New”, del submenu siguiente escogeremos “Apollo Project”.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p1.jpg' alt='apollo_hellow_p1.jpg' /></p>
<p>Después de esto, aparecerá una ventana donde configuraremos las opciones de nuestro proyecto, veamos una por una. </p>
<p>La primer pantalla nos pide que seleccionemos si utilizaremos ColdFusion, Flex Data Services, o Webservices/XML para accesar a información externa. Por default aparece seleccionada Basic que es la utilizaremos. Damos click en “Next”.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p2.jpg' alt='apollo_hellow_p2.jpg' /></p>
<p>La siguiente pantalla nos pide que nombremos nuestro proyecto, en este caso HelloWorld.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p3.jpg' alt='apollo_hellow_p3.jpg' /></p>
<p>En esta pantalla nos pedirá que ingresemos Paths a clases externas, en este caso no utilizaremos ninguna, vamos a usar las que vienen por defecto, Clic en “Next”.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p4.jpg' alt='apollo_hellow_p4.jpg' /></p>
<p>Por último ingresaremos los detalles de nuestra aplicación.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p5.jpg'  alt='apollo_hellow_p5.jpg' /></p>
<ul>
<li>Id. El nombre de la aplicación.</li>
<li>Name: el nombre que aparecerá en el menú de inicio y en el icono de la aplicación una vez instalada.</li>
<li>Escription: qué es o qué hace la aplicación.</li>
<li>Copyrigth.</li>
</ul>
<p>Y la opción más importante es: Window Mode, esta opción nos permite escoger si queremos usar las ventanas por defecto del sistema operativo, si queremos usar la presentación de ventana que ofrece apollo o si queremos que nuestra aplicación no tenga ventana contenedora, esta última nos puede servir para hacer los famosos Wigets.</p>
<p>En este caso vamos a usar la que provee Apollo que es la opción “Transparent”, al dar clic en Finish, se creará el proyecto del lado izquierdo el cual contendrá nuestro archivo MXML. El  archivo XML que es donde están las propiedades de nuestra aplicación las cuales pueden ser editadas, y por último el folder bin que es donde se almacena todo lo creado.</p>
<p>En la parte derecha por defecto aparecerá abierto el archivo MXML el archivo principal de la aplicación y que será compilado el aspecto inicial es este:</p>
<div class='codigo'>
<pre>
&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;mx:ApolloApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"&gt;
&lt;/mx:ApolloApplication&gt;
</pre>
</div>
<p>A su vez Flex Builder nos da la posibilidad de arrastrar los componentes que vayamos a utilizar en el modo de diseño, esta modalidad ira creando el código automáticamente en nuestro archivo.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p6.jpg' alt='apollo_hellow_p6.jpg'  /></p>
<p>Así es como se ve el ambiente de desarrollo cuando estamos en la vista de Diseño (Design).</p>
<p>Como puede ver del lado izquierdo aparece un listado de los componentes que podemos usar en nuestra aplicación, para este ejemplo solo usaremos el componente Label, para ello tomamos el componente y lo arrastramos al escenario.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p7.jpg' alt='apollo_hellow_p7.jpg' /></p>
<p>Al momento de seleccionar el componente del lado derecho se mostrara el panel de propiedades en donde pondremos el texto, seleccionamos las característica del texto. De vuelta a la vista “Source” veremos que el código fue agregado, algo así:</p>
<div class='codigo'>
<pre>
&lt;?xml version="1.0" encoding="utf-8"?&gt;
&lt;mx:ApolloApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"&gt;
&lt;mx:Label text="Hello World!!!" horizontalCenter="0" verticalCenter="0" fontFamily="Georgia" fontSize="20" fontWeight="bold"/&gt;
&lt;/mx:ApolloApplication&gt;
</pre>
</div>
<p>Para ver el resultado de nuestra aplicación solo basta oprimir el botón para compilar.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p8.jpg' alt='apollo_hellow_p8.jpg' /></p>
<p>Y veremos el resultado final.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p9.jpg' alt='apollo_hellow_p9.jpg' /></p>
<p>Por último para distribuir nuestro archivo e instalar nuestra aplicación seleccionamos del menú principal la opción de “File” y luego Export. En la ventana que aparecerá seleccionamos “Deployable AIR File”.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p10.jpg' alt='apollo_hellow_p10.jpg' /></p>
<p>Una vez hecho esto solo nos falta seleccionar que proyecto queremos hacer instalable y escoger el lugar en donde se guardará nuestro archivo .air.</p>
<p><img src='http://www.maestrosdelweb.com/images/apollo_hellow_p11.jpg' alt='apollo_hellow_p11.jpg' /></p>
<p>Al dar click en “Finish” nuestro archivo será creado en el Path seleccionado y estar listo para su distribución. Con esto ya tenemos nuestra primera aplicación hecha en Apollo.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.maestrosdelweb.com/editorial/apollo/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Introducción a XML</title>
		<link>http://www.maestrosdelweb.com/editorial/flashxml/</link>
		<comments>http://www.maestrosdelweb.com/editorial/flashxml/#comments</comments>
		<pubDate>Wed, 11 May 2005 00:00:00 +0000</pubDate>
		<dc:creator>Carlos Chávez García</dc:creator>
		
		<category><![CDATA[Editorial]]></category>

		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Pequeña introducción sobre que es XML y como empezar a trabajar con el.
Esto es solo una peque&#241;a introducci&#243;n al XML para poder entender como empezar a trabajar con dicho lenguaje. 
Aqu&#237; hay informaci&#243;n mucho m&#225;s extensa www.w3schools.com/xml 
Comenzamos&#8230;

  
  XML

  (eXtensible Markup Language &#243; Lenguaje extensible de marcas) es un conjunto de [...]]]></description>
			<content:encoded><![CDATA[<p><span class="intro">Pequeña introducción sobre que es XML y como empezar a trabajar con el.</span><span id="more-302"></span></p>
<p>Esto es solo una peque&ntilde;a introducci&oacute;n al <strong>XML</strong> para poder entender como empezar a trabajar con dicho lenguaje. </p>
<p>Aqu&iacute; hay informaci&oacute;n mucho m&aacute;s extensa <a href="http://www.w3schools.com/xml">www.w3schools.com/xml </a></p>
<h3>Comenzamos&#8230;</h3>
<p><strong><br />
  <img src="/images/editorial/flashxml.gif" width="174" height="104" alt="Flash XML" class="lateral"/><br />
  XML<br />
</strong><br />
  (eXtensible Markup Language &oacute; Lenguaje extensible de marcas) es un conjunto de reglas que sirven para definir etiquetas sem&aacute;nticas para organizar un documento. Adem&aacute;s el XML es un metalenguaje que te permite dise&ntilde;ar tu propio lenguaje de etiquetas. A diferencia del un lenguaje de etiquetas normal (HTML), XML te permite definir tu propio lenguaje..
</p>
<p><em>Me lo podr&iacute;as explicar en Espa&ntilde;ol..? =P </em></p>
<p>Vi&eacute;ndolo desde un punto de vista simple y sin meternos en definiciones muy t&eacute;cnicas. XML nos ayuda a tener nuestra informaci&oacute;n estructurada jer&aacute;rquicamente por medio de etiquetas &oacute; Tags que nosotros mismos crearemos. </p>
<p>Ahora, para crear un documento XML no necesitas nada mas que un Procesador de texto simple, Ej.: Bloc de Notas y al terminar el documento solo tienes que salvarlo con la extensi&oacute;n xml. </p>
<p> Nota: Yo uso el Editplus2 =). </p>
<h4>Estructura de un documento XML </h4>
<p> Para crear un documento XML valido solo necesitas recordar 2 cosas. </p>
<p>1.- Declarar el tipo de documento, </p>
<div class="codigo">
<pre>&lt;?xml version='1.0'?&gt;</pre>
</div>
<p>Esto, creo yo, no necesita explicaci&oacute;n. Aunque cabe mencionar que al declarar un documento XML tambi&eacute;n puedes declarar el tipo de codificaci&oacute;n que ocuparas, esto se hace por medio de un atributo. </p>
<div class="codigo">
<pre>&lt;?xml version='1.0' encoding='UTF-8'?&gt;</pre>
</div>
<p><a href="http://www.w3schools.com/xml/xml_encoding.asp">Mas info sobre codificaciones </a></p>
<p>2.- Aunque podemos crear nuestras propias etiquetas en el XML estas deben de llevar un orden jer&aacute;rquico</p>
<div class="codigo">
<pre>&lt;?xml version='1.0' encoding='UTF-8'?&gt;
    &lt;Ligue&gt;
        &lt;Galan&gt;Hola! bailamos&lt;/Galan&gt;
	&lt;Chava&gt;ashhhhhh!!&lt;/Chava&gt;

    &lt;/Ligue&gt;
</pre>
</div>
<p>Si te das cuenta los nodos Galan y Chava son hijos del Nodo Ligue, para crear un nodo nuevo solo tienes que escribir </p>
<p>&lt;nombredelnodo&gt;</p>
<p>para indicar el inicio y </p>
<p>&lt;/nombredelnodo&gt;</p>
<p>para indicar su fin. </p>
<p>Es algo simple no?. </p>
<p>Dichos nodos, a su vez pueden contener cualquier cantidad de atributos, dichos atributos son fuente de informaci&oacute;n, que en lo particular me gusta trabajar con ellos. veamos un ejemplo de tributos&#8230;</p>
<div class="codigo">
<pre>&lt;?xml version='1.0' encoding='UTF-8'?&gt;
    &lt;Ligue&gt;

        &lt;Galan nombre='Juan' edad='20'&gt;Hola! bailamos&lt;/Galan&gt;
        &lt;Chava nombre='Maria' edad='19'&gt;ashhhhhh!!&lt;/Chava&gt;
    &lt;/Ligue&gt;
</pre>
</div>
<p>umm interesante&hellip;. A m&iacute;, repito, se me hace m&aacute;s f&aacute;cil trabajar con atributos, siempre y cuando la informaci&oacute;n contenida no sea extensa&hellip;.</p>
<p>Al momento de trabajar con informaci&oacute;n extensa y/o caracteres propios del lenguaje: </p>
<p>&lt;, &gt; , &#8216;, &quot;</p>
<p>puede haber errores. </p>
<p>Por ejemplo si queremos mostrar c&oacute;digo mediante XML qu&eacute; pasa?.. </p>
<div class="codigo">
<pre>&lt;?xml version='1.0'?&gt;
    &lt;source&gt;
        for(var a=0; a&lt;10; a++){
           trace("Hola Mundo!!")
        }
    &lt;/source&gt;
</pre>
</p></div>
<p>Esto nos marcara un error de sintaxis ya que en c&oacute;digo utilizamos un </p>
<p>&lt;</p>
<p>Pero este peque&ntilde;o inconveniente lo podemos arreglar usando CDATA. </p>
<p>Lo que CDATA hace es: Simplemente toma todo el texto que esta contenido dentro del tag y lo muestra tal cual. Evitando problemas de sintaxis.. </p>
<p>Ejemplo:</p>
<div class="codigo">
<pre>&lt;?xml version='1.0'?&gt;
    &lt;source&gt;
    &lt;![CDATA[
        for(var a=0; a&lt;10; a++){
           trace("Hola Mundo!!")
        }
    ]]&gt;
    &lt;/source&gt;</pre>
</p></div>
<p>Y listo Problema resuelto.. =) </p>
<p>Con esto ya podemos empezar a trabajar con archivos XML. </p>
<p>La &iacute;dea es trabajar con datos extra&iacute;dos de un XML en Flash en un pr&oacute;ximo art&iacute;culo.</p>
<p> <a href="http://www.maestrosdelweb.com/editorial/util/xml_intro.zip">Bajar Fuentes</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.maestrosdelweb.com/editorial/flashxml/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Manejando formularios con Flash y PHP</title>
		<link>http://www.maestrosdelweb.com/editorial/fflashphpform/</link>
		<comments>http://www.maestrosdelweb.com/editorial/fflashphpform/#comments</comments>
		<pubDate>Tue, 09 Mar 2004 00:00:00 +0000</pubDate>
		<dc:creator>Carlos Chávez García</dc:creator>
		
		<category><![CDATA[Editorial]]></category>

		<category><![CDATA[Flash]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Este tutorial nos ayudará a realizar un formulario a través de flash que se enviará por correo utilizando el soporte de PHP y la función de mail del servidor.
Para
  este formulario, necesitaremos un servidor con soporte PHP y la funci&#243;n
  mail activada. ¿Como sabemos si tenenos dicha funci&#243;n?, simple.
 Crea un nuevo archivo [...]]]></description>
			<content:encoded><![CDATA[<p><span class="intro">Este tutorial nos ayudará a realizar un formulario a través de flash que se enviará por correo utilizando el soporte de PHP y la función de mail del servidor.</span><span id="more-225"></span></p>
<p>Para<br />
  este formulario, necesitaremos un servidor con soporte PHP y la funci&oacute;n<br />
  mail activada. ¿Como sabemos si tenenos dicha funci&oacute;n?, simple.</p>
<p> Crea un nuevo archivo PHP (&quot;send.php&quot;) y pones el siguiente c&oacute;digo.</p>
<p>  <strong>C&oacute;digo:</strong> </p>
<div class="codigo">
<pre>
&lt;?php
mail(&quot;tuCorreo@tuServidor.com&quot;, &quot;Probando Ando =)&quot;, &quot;Hola Hola!!&quot;);
?&gt;
</pre>
</div>
<p> S&uacute;belo a tu servidor y pru&eacute;balo <b>www.tuServidor.com/send.php</b>,<br />
    Si todo esta bien te saldr&aacute; una pagina en Blanco en el navegador y<br />
    a tu casilla llegara dicho correo. </p>
<p><img src="/images/editorial/fflashphpform_1.gif" alt="Formulario PHP Flash" width="308" height="233" class="centro"/></p>
<p> Bien,<br />
      Una vez comprobado esto seguimos.</p>
<h3>Primero trabajaremos el Fla:</h3>
<p> Creamos<br />
    una nueva pel&iacute;cula, sobre el escenario creamos 4 campos de texto de<br />
    entrada <b>InputText</b> y les damos nombre de instancia, y creamos 2 botones &quot;enviar_btn&quot; y &quot;borrar_btn&quot; </p>
<p> Crearemos<br />
    2 funciones una para enviar las variables a PHP y otra funci&oacute;n para<br />
    borrar los datos del formulario.</p>
<h3>Funci&oacute;n enviar:</h3>
<p><strong>C&oacute;digo: </strong></p>
<div class="codigo">
<pre>enviar = function () {
    if (email_txt.text.length &amp;&amp; nombre_txt.length &amp;&amp; titulo_txt.length &amp;&amp; mensaje_txt.length) {
        if (email_txt.text.indexOf(&quot;@&quot;) != -1 &amp;&amp; email_txt.text.indexOf(&quot;.&quot;) != -1) {
            form_lv = new LoadVars();
            form_lv.nombre = nombre_txt.text;
            form_lv.mail = email_txt.text;
            form_lv.mensaje = mensaje_txt.text;
            form_lv.titulo = titulo_txt.text;
            form_lv.sendAndLoad(&quot;http://www.tmeister.net/send.php&quot;, form_lv, &quot;POST&quot;);
            mensaje_txt.text = &quot;Enviando Mensaje..&quot;;
            nombre_txt.text = &quot;&quot;;
            email_txt.text = &quot;&quot;;
            titulo_txt.text = &quot;&quot;;
            form_lv.onLoad = function() {
                if (this.estatus == &quot;ok&quot;) {
                    mensaje_txt.text = &quot;Tu mensaje fue enviado...&quot;;
                    nombre_txt.text = &quot;&quot;;
                    email_txt.text = &quot;&quot;;
                    titulo_txt.text = &quot;&quot;;
                } else {
                    mensaje_txt.text = &quot;Problemas con el servidornIntentalo de Nuevo&quot;;
                }
            };
        } else {
            email_txt.text = &quot;Correo Invalido&quot;;
        }
    } else {
        email_txt.text = &quot;Dato Necesario&quot;;
        nombre_txt.text = &quot;Dato Necesario&quot;;
        titulo_txt.text = &quot;Dato Necesario&quot;;
        mensaje_txt.text = &quot;Dato Necesario&quot;;
    }
};
</pre>
</p></div>
<p><strong>C&oacute;digo: </strong></p>
<div class="codigo">
<pre>
if (email_txt.text.length &amp;&amp; nombre_txt.length &amp;&amp; titulo_txt.length &amp;&amp; mensaje_txt.length)
</pre>
</div>
<p>    Con esto comprobamos que al presionar el boton todos los campos de texto no<br />
    est&eacute;n vac&iacute;os, si esta condici&oacute;n no se cumple en los campos<br />
    aparecer&aacute; el texto &quot;Dato Necesario&quot;;</p>
<p><strong>C&oacute;digo:</strong></p>
<div class="codigo">
<pre>if (email_txt.text.indexOf(&quot;@&quot;) != -1 &amp;&amp; email_txt.text.indexOf(&quot;.&quot;) != -1) {
</pre>
</div>
<p>Esta comprobaci&oacute;n revisa que el mail introducido tenga la <b>@</b> y<br />
    un punto <b>.</b>;</p>
<p> Si ambas condiciones son ciertas creamos una instancia de la clase LoadVars<br />
    y asignamos variables para enviar a PHP</p>
<p>      <strong>C&oacute;digo:</strong></p>
<div class="codigo">
<pre>form_lv_lv = new LoadVars();
form_lv.nombre = nombre_txt.text;
form_lv.mail = email_txt.text;
form_lv.mensaje = mensaje_txt.text;
form_lv.titulo = titulo_txt.text;
form_lv.sendAndLoad(&quot;send.php&quot;, form_lv, &quot;POST&quot;);
    mensaje_txt.text = &quot;Enviando Mensaje..&quot;;
}</pre>
</p></div>
<p>Una vez ejecutado el Script PHP y si todo salio bien, este, regresara una variable<br />
    llamada <b>status</b> que tomaremos con el evento onLoad</p>
<p>      <strong>C&oacute;digo:</strong></p>
<div class="codigo">
<pre>form_lv.onLoad = function() {
                if (this.estatus == &quot;ok&quot;) {
                    mensaje_txt.text = &quot;Tu mensaje fue enviado. nGracias.... =)&quot;;
                    nombre_txt.text = &quot; &quot;;
                    email_txt.text = &quot; &quot;;
                    titulo_txt.text = &quot; &quot;;
                } else {
                    mensaje_txt.text = &quot;Problemas con el servidornIntentalo de Nuevo&quot;;
                }
            };</pre>
</div>
<h3>Funci&oacute;n borrar:</h3>
<p>Con esta funci&oacute;n solo borraremos los datos que tengan los campos de texto.</p>
<p>      <strong>C&oacute;digo:</strong> </p>
<div class="codigo">
<pre>borrar = function () {
    nombre_txt.text = &quot; &quot;;
    email_txt.text = &quot; &quot;;
    mensaje_txt.text = &quot; &quot;;
    titulo_txt.text = &quot; &quot;;
};</pre>
</div>
<p>Esto no necesita mucha explicaci&oacute;n =P</p>
<p> Por ultimo asignamos dichas funciones a los eventos de los botones</p>
<p>    <strong>C&oacute;digo:</strong></p>
<div class="codigo">
<pre>  enviar_btn.onRelease = enviar;
  borrar_btn.onRelease = borrar;
</pre>
</p></div>
<p>Y esto es todo en Flash.. Seguimos con el PHP..</p>
<p>      <strong>C&oacute;digo:</strong></p>
<div class="codigo">
<pre>&lt;?php
            if(isset($_POST[&quot;nombre&quot;]) &amp;&amp; isset($_POST[&quot;titulo&quot;]) isset($_POST[&quot;email&quot;])
            isset($_POST[&quot;mensaje&quot;]) ){
            $fecha = date(&quot;d-M-y H:i&quot;);
            $mymail = "tuCorreo@tuServidor.com";
            $subject = "Desde el Sitio.. =)";
            $contenido = $nombre." Escribio :\n";
            $contenido .= $mensaje."\n\n";
            $contenido .= "el mensaje se escribio el ".$fecha;
            $header = "From:".$mail."\nReply-To:".$mail."\n";
            $header .= "X-Mailer:PHP/".phpversion()."\n";
            $header .= "Mime-Version: 1.0\n";
            $header .= "Content-Type: text/plain";
            mail($mymail, $subject, utf8_decode($contenido) ,$header);
            echo "&amp;estatus=ok&amp;";
            }
            ?&gt;
  </pre>
</p></div>
<p>La funci&oacute;n <b>isset</b> verifica que una variable exista, en este caso verificamos<br />
    que las cuatro variables existan antes de enviar el mail.</p>
<p>
  Los par&aacute;metros de la funci&oacute;n <b>mail</b> de PHP son:</p>
<ul>
<li>
    <b>Para:</b> Correo destino. En este caso $mymail</li>
<li>
    <b>Titulo:</b> Titulo del Correo. En este caso $subject</li>
<li>
    <b>Mensaje:</b> Cuerpo del correo. En este caso $contenido</li>
<li>
    <b>Headers o cabeceras:</b> Son las cabeceras del correo, donde se especifica<br />
    el tipo de contenido (texto plano, texto HTML), entre muchas otras opciones<br />
    que no mencionare.</li>
</ul>
<p>
  Una vez enviado el mail el PHP regresa la variable status que Flash interpretara&#8230;<br />
  Si dicha variable existe es que todo funci&oacute;no&#8230; =)</p>
<p>    <strong>NOTA:</strong> Para enviar un correo en formato HTML solo necesitas<br />
    escribir el cuerpo del mensaje con dicho formato (HTML) y en los headers especificarlo,<br />
    esto se hace cambiando <b>Content-Type: text/plain</b> por <b>Content-Type:<br />
    text/html</b></p>
<p>    Para m&aacute;s informaci&oacute;n sobre la funci&oacute;n mail <a<br />
            href="http://mx.php.net/manual/es/function.mail.php">Click Aqui</a></p>
<p><a<br />
            href="/editorial/util/flashphpform.zip">Bajar Zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.maestrosdelweb.com/editorial/fflashphpform/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
