Flash アプリといくつかの PHP スクリプトがあります。フォルダを作成して画像をアップロードしたい。
私のphpコードは「http://dev.myapp.com.au/php/testFtp.php」にあり、保存場所は「storagetest.myapp.com.au」です。これらのドメインは両方とも同じ「myapp」サーバーに存在します。
今は新しいフォルダーを作成したいだけです。私の PHP では、ftp_connect()、ftp_login()、および ftp_mkdir() を使用しています。
これは、私のテスト用 PHP がブラウザーから実行されている場合は正常に機能しますが、Flash アプリから呼び出された場合は機能しません。これが私のphpスクリプトの一部です:
$ftp_server = "storagetest.myapp.com.au";
$ftp_user_name = "name";
$ftp_user_pass = "pass";
$dirNew = "/web/test/storage/new_folder";
$conn_id = ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server");
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
$mk = ftp_mkdir($conn_id, $dirNew);
ftp_close($conn_id);
編集:
また、Flash からの呼び出し方法は次のとおりです。
sMyUrl = "http://dev.myapp.com.au/php/testFtp.php";
var myData:URLRequest = new URLRequest( sMyUrl );
myData.method = URLRequestMethod.POST;
var variables:URLVariables = new URLVariables();
(set some vars here)
myData.data = variables;
m_uloader = new URLLoader();
m_uloader.dataFormat = URLLoaderDataFormat.TEXT;
m_uloader.addEventListener(Event.COMPLETE, onRecordCompleteHandler);
m_uloader.addEventListener(IOErrorEvent.IO_ERROR, onIoErrorHandler);
m_uloader.load(myData);
このフラッシュ コードは、他の PHP スクリプトでも機能します。
問題を ftp_connect() まで追跡したと思います。Flash から呼び出され、これがスクリプト内にある場合、スクリプト全体が機能しなくなります。私のテストエコーステートメントでさえ返されません。
これが機能しない理由はありますか?ありがとう :)