Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2011
    Messaggi
    4

    AS3, PHP problema invio dati

    Ciao a tutti,
    sto cercando di inviare dei dati da un file .php verso FLASH, e poi di stamparli sullo schermo, ma tali dati risultano undefined e mi esce il seguente messaggio:

    completeHandler (text): undefined

    Potreste aiutarmi?
    Vi posto il codice PHP:
    codice:
    <?php
    
    echo "&pos0=1&nome0=GINO&punteggio0=45&pos1=56&nome1=RON&punteggio1=33";
    
    ?>
    ed il codice AS3 :
    codice:
    package{
    import flash.net.*;
    
    public class trystring extends Sprite { 
    private var dataFormat:String = URLLoaderDataFormat.TEXT;
    
    public function trystring(){
    
    var myrequest:URLRequest= new URLRequest('prova_stringa.php');
    var loader:URLLoader = new URLLoader();
    loader.dataFormat = dataFormat;
    loader.load(myrequest);
    try {
          loader.load(myrequest);
        } catch (error:Error) {
          trace("Error loading requested document");
        }				
    
    trace("completeHandler (text): " + loader.data);
    }
    
    }

  2. #2
    La risposta è undefined perché il file non è ancora stato caricato.

    Devi aspettare il completo caricamento del file per poter avere qualche dato da stampare a video.

    Fai una ricerca per addEventListener(Event.COMPLETE, ...);.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2011
    Messaggi
    4
    Ciao,
    grazie per la risposta, in effetti non avevo messo il listener ma il problema persiste;
    ora ti posto il progettino semplice completo per il quale non riesco a trovare soluzione esto impazzendo

    php
    Codice PHP:
     <?php

    $returnVars 
    = array();
    $returnVars['x'] = 10;
    $returnVars['y'] = 15;
    $returnString http_build_query($returnVars);
    echo 
    html_entity_decode($returnString); 

    ?>
    qui il risultato a video è giusto:
    Codice PHP:
    x=10&y=15 
    AS3

    codice:
    package 
    {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.*;
    import flash.events.Event;
    import flash.events.IOErrorEvent;
    import fl.data.DataProvider; 
    import fl.controls.DataGrid; 
    import fl.controls.dataGridClasses.DataGridColumn;
    
    public class trystring2 extends Sprite {
    
    public function trystring2() {
    
    var urlRequest:URLRequest = new URLRequest("provastringa2.php");
    var loader:URLLoader = new URLLoader();
    loader.dataFormat = URLLoaderDataFormat.VARIABLES;
    loader.addEventListener(Event.COMPLETE, onComplete);
    loader.load(urlRequest);
    
    }
    
    
    function onComplete (evt:Event):void {
        try {
            var vars:URLVariables = new URLVariables(evt.target.data);
        } catch (err:Error) {
            trace (err);
        } 
    	var miox = vars.x;
            var mioy = vars.y;
            trace ("miox: "+miox+" e mioy: "+mioy);
    
    
    var ai:uint;
    var dpp:DataProvider = new DataProvider();
    for (ai = 0; ai < 2; ai++) {
        dpp.addItem({col11:vars.x, col22:vars.y});
    }
    
    var dg:DataGrid = new DataGrid();
    dg.setSize(200, 300);
    dg.columns = ["col11", "col22"];
    dg.dataProvider = dpp;
    addChild(dg);
    }
    
    }//END CLASS
    }// END PACKAGE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.