1

これはフラッシャーとして私が今まで経験した中で最も奇妙なことです. PHP プログラマーは、私のコードが変数 (変数 Name と email) を渡さないと言っています。as3はこちら。私はphpを入れますが、プログラマーは、phpはそれとは何の関係もないことを教えてくれます。私はアップロードファイルのアドレスを指定していません。アドレスは正しいです(入力すると)

texti.visible = false; 

var loader : URLLoader = new URLLoader;
var urlreq:URLRequest = new URLRequest("https://[someadress]/upload.php");
var urlvars:URLVariables = new URLVariables();
loader.dataFormat = URLLoaderDataFormat.VARIABLES;
urlreq.method = URLRequestMethod.POST;    

    //var urlreq:urlreq = new URLRequest("https://localhost/upload/upload.php");

    var imageTypes:FileFilter = new FileFilter("Images (*.jpg, *.jpeg,  *.png)", "*.jpg; *.jpeg; *.gif; *.png");

    var allTypes:Array = new Array(imageTypes);

    var fileRef:FileReference = new FileReference();

    fileRef.addEventListener(Event.SELECT, syncVariables);
    fileRef.addEventListener(Event.COMPLETE, completeHandler);
    fileRef.addEventListener(ProgressEvent.PROGRESS, progressHandler);

    btn_browse.addEventListener(MouseEvent.CLICK, browseBox);
    btn_upload.addEventListener(MouseEvent.CLICK, uploadVars);        

    function browseBox(event:MouseEvent):void {
        fileRef.browse(allTypes);
    }

    function uploadVars(event:MouseEvent):void {            
        urlvars.Name = "somename"; 
        urlvars.Email = "some@someEmail.com"; 
        //urlvars.fb_id = Main.facebook1;
        urlvars.picname = fileRef.name;
        trace(urlvars.Name);
        trace(urlvars.Email);
        loader.load(urlreq);
        fileRef.upload(urlreq);
        btn_upload.visible = true;
    }

    function syncVariables(event:Event):void {
         texti.text = "" + fileRef.name;
         //blocker.visible = false;
         btn_upload.visible = true;         
    }

    function completeHandler(event:Event):void {
        trace("h1");

        var bytestoLoad:Number = loaderInfo.bytesTotal;
        var numberLoaded:Number = loaderInfo.bytesLoaded;
        if (bytestoLoad == numberLoaded)
        {
        gotoAndStop(2);

        trace(fileRef.name);                

        t_status.gotoAndPlay(2);
        btn_upload.removeEventListener(MouseEvent.CLICK, uploadVars);
        btn_browse.removeEventListener(MouseEvent.CLICK, browseBox);

        }   
        else
        {               
            trace("wtf?");              
        }

    }

    function progressHandler(event:ProgressEvent):void {
         trace("inprogress")
    }

私は何時間もコードのマイナーなものを変更していて、まだ進歩していないので、助けていただければ幸いです

4

1 に答える 1

2

ロードを呼び出す直前に 1 行のコードを忘れました。

urlreq.data = urlvars;

変数をリクエストに割り当てる必要があります。

于 2012-11-27T18:37:26.853 に答える