1

这是我作为闪光者经历过的最奇怪的事情。php 程序员说我的代码没有传递任何变量(变量名称和电子邮件)。这是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

您在调用负载之前忘记了一行代码:

urlreq.data = urlvars;

您需要将变量分配给请求。

于 2012-11-27T18:37:26.853 回答