Итак, я пишу эту программу сценария действия, которая будет вызывать php-файл, который будет возвращать имена файлов внутри папки.
Мой PHP-файл выглядит так
<?php
$dirname = "thumbs";
$ret =array();
if($dir = opendir($dirname)){
$i=0;
while($file = readdir($dir)){
if($file != '.' && $file != '..'){
$ret["file" . $i] = $file;
$i++;
}
}
$returnString = http_build_query($ret);
echo $returnString;
}
?>
, если я простозапустите это самостоятельно, я получу
file0=back-matter.pdf&file1=ch1.pdf&file2=ch2.pdf&file3=ch3.pdf&file4=ch4.pdf&file5=ch5.pdf&file6=ch6.pdf&file7=ch7.pdf&file8=ch8.pdf&file9=ch9.pdf&file10=front-matter.pdf
, и это файлы внутри папки thumbs.Теперь я хочу вызвать это в моем ActionScript и иметь возможность получить тот же вывод в моем скрипте действия.
Это мой файл скрипта действия:
package
{
import flash.display.MovieClip;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.net.URLVariables;
import flash.net.URLRequestMethod;
import flash.net.URLLoaderDataFormat;
import flash.events.Event;
public class Main extends MovieClip
{
public var thumbFolder:String = "thumbs";
public var markerFolder:String = "marker";
public var folderGetterPHP:String = "getter.php";
public function Main()
{
var urlRequest:URLRequest = new URLRequest(folderGetterPHP);
var urlLoader:URLLoader = new URLLoader();
urlRequest.method = URLRequestMethod.GET;
urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
urlLoader.addEventListener(Event.COMPLETE, completeHandler);
urlLoader.load(urlRequest);
}
public function completeHandler(evt:Event):void
{
trace(evt.target.data);
}
}
}
Я запустил это и получилthis
Error: Error #2101: The String passed to URLVariables.decode() must be a URL-encoded query string containing name/value pairs.
at Error$/throwError()
at flash.net::URLVariables/decode()
at flash.net::URLVariables()
at flash.net::URLLoader/onComplete()
Я также попытался установить
urlLoader.dataFormat = URLLoaderDataFormat.TEXT;
, но у меня только исходный код php отображался как вывод.Может кто-нибудь объяснить мне, как я могу получить вывод моего php для отображения во флэш-памяти.