Flex y PHP
Continuando con la serie de minitutoriales dedicados a la integración entre Adobe Flex y una base de datos Mysql, vamos a ilustrar un nuevo ejemplo de inserción de datos a través de nuestra pasarela PHP.
Para ello vamos a seguir trabajando sobre el primer ejemplo que teníamos y vamos a crear un nuevo estado con el nombre “insert”, donde pondremos el formulario de inserción de un nuevo producto.

El código fuente sería el siguiente:
-
<mx:states>
-
<mx:State name=“insert”>
-
<mx:RemoveChild target=“{button1}”/>
-
<mx:RemoveChild target=“{dgProductos}”/>
-
<mx:AddChild position=“lastChild”>
-
<mx:Panel x=“10″ y=“10″ width=“319″ height=“215″layout=“absolute” title=“Nuevo Producto”>
-
<mx:Form x=“0″ y=“0″>
-
<mx:FormItem label=“Referencia”>
-
<mx:TextInput id=“referencia” width=“106″/>
-
</mx:FormItem>
-
<mx:FormItem label=“Nombre”>
-
<mx:TextInput id=“nombre”/>
-
</mx:FormItem>
-
<mx:FormItem label=“Precio”>
-
<mx:TextInput id=“precio”/>
-
</mx:FormItem>
-
</mx:Form>
-
<mx:ControlBar horizontalAlign=“right”>
-
<mx:Button label=“Cancelar”click=“this.currentState=””/>
-
<mx:Button label=“Insertar” id=“botInsertar”click=“insertaProducto()”/>
-
</mx:ControlBar>
-
</mx:Panel>
-
</mx:AddChild>
-
</mx:State>
-
</mx:states>
Por otra parte deberemos crear una llamada HTTPService para llamar al fichero PHP que se encarga de la inserción. Destacar que debemos poner el mismo método de petición (GET o POST) en ambos sitios:
-
<mx:HTTPService id=“insertProd”url=“http://localhost/lsensualite/xml/insertProductos.php”method=“GET” resultFormat=“text” result=“resultHandler(event)”/>
(Fichero PHP)
Por último nos queda definir la función que se desencadenará al pulsar el botón insertar del formulario:
-
<mx:Script>
-
<![CDATA[
-
import mx.rpc.events.ResultEvent;
-
-
public function resultHandler( event: ResultEvent ):void {
-
// Refresco el DataGrid del primer estado
-
prodRPC.send();
-
}
-
-
public function insertaProducto():void {
-
// Recojo los parámetros
-
var parametros:Object = new Object;
-
parametros.referencia = referencia.text;
-
parametros.nombre = nombre.text;
-
parametros.precio = precio.text;
-
// Llamo a PHP
-
insertProd.send(parametros);
-
// Vuelvo al estado inicial
-
this.currentState = "";
-
}
-
]]>
-
</mx:Script>
posted in PHP, Programacion | 0 Comments
Este artículo es a la vez simple y útil. Dado que los discos duros externos USB están tan baratos en relación a la capacidad que tienen (en 



