2012-08-06 5 views
1

나는 PHP 스크립트를 실행해야하는 ActionScript 스크립트를 가지고 있는데, PHP 스크립트는 오류가 아니라 AS 코드에서 일반 텍스트 파일을 만드는 것으로 축소했다. 라인이 php 스크립트를 호출해야하기 때문에 라인이 실행되는지 확인하기 위해 'trace'를 호출했습니다. 이걸 감안할 때 '스크립트가 실행되었습니다'처럼 보이지만 새로운 파일은 없습니다.Actionscript - PHP가 URLLoader.load로 실행되지 않습니다 (새 URLRequest ("i.php")).

다음은 중요한 코드입니다 :

당신은 당신의 AS 코드를 추가하면 Event.COMPLETE을 시도 할 수

$ourFileName = "playlistTEST.xml"; 
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file"); 
fwrite($ourFileHandle,"CREATED"); 
fclose($ourFileHandle); 

답변

1

PHP

const iURL:String = "i.php"; 
var myLoader:URLLoader = new URLLoader(); 
myLoader.load(new URLRequest(iURL)); 

AS

var myRequest:URLRequest = new URLRequest("http:// ... /i.php"); 
myLoader = new URLLoader(); 
myLoader.addEventListener(Event.COMPLETE, onLoad); 
myLoader.load(myRequest); 

function onLoad(evt:Event):void 
{ 
    trace(myLoader.data); 
} 

은 또한 않았다 p를 열어 라. hp 파일은 아직 브라우저가 있습니까? AS로 호출하기 전에 먼저 테스트해야합니다.

AS는 일반적인 HTTP 요청 방법을 사용하므로 브라우저에서 열 때와 동일한 결과를 얻습니다.

+0

브라우저에서 작동합니다. onLoad가 예약어처럼 보이고 컴파일러 오류가 발생 했으므로 기능 이름을 변경했지만 새 추적 출력이 생성되지 않았습니다. –

+0

PHP 파일이 텍스트를 출력하지 않으므로, 아마도'echo'의 일부일 것입니다. – MakuraYami

+0

아무런 차이가 없습니다. 나는 또한 EVENT.ACTIVATED 핸들러를 추가했으나 요청에 대해 트리거되지 않았다. (EVENT.COMPLETE 요청처럼 동일한 로더를 가진 다른 요청에 대해서도 마찬가지이다.) –

0

은 다음 코드를 참조하십시오.

var urlRequest:URLRequest = new URLRequest("http://...php"); 
urlRequest.method = URLRequestMethod.GET; 

var loader:URLLoader = new URLLoader(); 
loader.dataFormat = URLLoaderDataFormat.VARIABLES; 
loader.addEventListener(Event.COMPLETE, onCompleteHandler); 
loader.load(urlRequest); 

function onCompleteHandler(e:Event) 
{ 

} 
+0

시도했지만 차이는 없습니다. 내가 생각할 수있는 유일한 생각은 내가 PHP 파일을 로컬로 참조하고 있지만 지금은 내 컴퓨터에 문제가있어서 아파치를 설정할 수 없어 localhost로 작업 할 수 없다. 로컬 참조로 인해 문제가 발생할 수 있습니까? –

+0

.fla 파일과 동일한 폴더에있는 .php 파일은 무엇입니까? –

+0

예. .fla에서 app 폴더에있는 파일을 수정하려고 할 때 보안 문제가있을 수 있지만 PHP 파일에서 수정이 수행되었으므로 문제가 아닌 것 같습니다. –