Quizás no este clara la explicación así que lo explicaré un poco más.
Para trabajar con archivos PHP en tu PC asumimos que tienes instalado Apache+PHP+MySQL y que tu ruta local es "http://localhost/" que a veces puede varias si usas puertos quedando "http://localhost:8080/" o similar.
Entonces supongamos que en tu carpeta web de tu servidor local (www, htdocs o donde lo hayas configurado), para el ejemplo digamos que esta en "c:\www\", y supongamos que tienes una carpeta "swf-php", dentro de ella tienes tu archivo prueba.php y movie.swf al mismo nivel. Para invocar a tu PHP sería:
http://localhost/swf-php/prueba.phpBien, con esto ya tenemos todo listo para probar desde Flash pero no desde una ruta web. Para esto necesitaremos un archivo html (o tal vez php) que contenga el archivo SWF, por ejemplo: index.html .
c:\www\swf-php\
L prueba.php
L movie.swf
L index.html
http://localhost/swf-php/ (el nombre del archivo index se puede obviar, se mostrará por defecto).
o
http://localhost/swf-php/index.htmlBien con esto ya no necesitarás depender de una ruta absoluta para llegar a tu php.
Ahora vamos con el código en AS3 que irá en tu movie.fla:
Código ActionScript :
import flash.events.Event;
import flash.net.URLLoader;
import flash.net.URLRequest;
import flash.net.URLRequestMethod;
import flash.net.URLVariables;
var _vars:URLVariables = new URLVariables();
_vars.numero = 5;
_vars.nombre = 'Cristalab';
//var _urlPHP:URLRequest = new URLRequest('http://localhost/swf-php/prueba.php'); // Desde Flash
var _urlPHP:URLRequest = new URLRequest('prueba.php'); // Desde un navegador (IE, Firefox, etc).
_urlPHP.method = URLRequestMethod.POST;
_urlPHP.data = vars;
var _uLoader:URLLoader = new URLLoader();
_uLoader.addEventListener(Event.COMPLETE, urlLoaderCompleteHandler);
_uLoader.load(_urlPHP);
function urlLoaderCompleteHandler(evt:Event):void
{
trace( _uLoader.data );
//Si tu resultado es: result=ok&message=hola%20cristalab
// entonces usarás URLVariables para recibirlo
var dataPHP:URLVariables = new URLVariables(_uLoader.data);
trace(dataPHP.result); //output: 1
trace(dataPHP.message); //output: hola cristalab
/*
//si lo que tienes fue un XML:
//<?xml version="1.0" encoding="utf-8" ?>
//<data>
// <result>1</result>
// <message>hola cristalab</message>
//</data>
//entonces usarás la clase XML para recibirlo:
var dataPHP:XML = XML(_uLoader.data);
trace(dataPHP.result); //output: 1
trace(dataPHP.message); //output: hola cristalab
*/
}Esto lo probarías desde
http://localhost/swf-php/Espero que se haya entendido mejor la idea.