Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 17 su 17
  1. #11
    EUREKA FUNZIONA!!!!!!

    Grazie tante ad Alhazred e a clasku!!!! :

    Integrando questo file con Flash, ho notato che il percorso del file swf era abbinato alla variabile nominata link.
    Questa parola in AS3 ha delle funzioni quindi l'ho rinominata linkswf.

    In flash deve arrivare la variabile confronta e la variabile linkswf.

    Il fatto che il print:

    print("&confronta=$confronta&linkswf=".trim($dati[2]));

    mi riporta il nome delle variabili precedute dal segno & commerciale prima,
    in flash richiamo comunque le variabili solo con il nome o aggiungendo all'inizio del nome la & commerciale?

    Scusate l'ignoranze e grazie ancora per la Vostra pazienza!

  2. #12
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Come fai per far recuperare a Flash la risposta dello script PHP?

  3. #13
    Per quanto rigurda flsah ho creato un file cercaevento.swf

    Ho creato due campi di testo input per regione e citta, un tasto cerca.

    Per ora i valori delle variabili le faccio apparire in due campi di testo dinamici con instanze verifica e percorso.
    Per ora mi serve di monitorare se arrivano correttamente i dati in flash dal file php

    Questo è il codice commentato

    codice:
    stop();
    
    // Composizione pulsante
    Object(root).pcerca.addEventListener(MouseEvent.CLICK, cercaevento)
    function cercaevento(event:MouseEvent):void { 
    	
    	// DEFINIZIONE CARICMENTO FILE
    	// Creazione variabile di carcamento.
    	var caricaDati:URLLoader = new URLLoader(); 
    		
    	// Associazione del contenuto dei campi di testo input a delle variabili.
    	var input_regione = this.regione.text;
    	var input_citta = this.citta.text;
    	
    	// Caricamento del file trovamedia.php con passaggio dei valori delle variabili dei campi regione e citta.
    	// Il passaggio dei valori da Flash al file php avviene tra variabili.
    	// La variabile regione, che sarà ritracciaita in php dalla variabile &regione, prenderà il valore dalla variabile input_regione del file di input.
    	// La variabile citta, che sarà ritracciaita in php dalla variabile &regione, prenderà il valore dalla variabile input_citta.
    	caricaDati.load(new URLRequest("trovamedia.php?regione=input_regione&citta=input_citta"))  
    		
    	// Funzione di associamento variabili/valori generati dal file php con i campi di testo verifica e linkswf.
    	caricaDati.addEventListener(Event.COMPLETE, onLoaded); 
    	function onLoaded(e:Event):void {
    		// Collegamento dati delle varibili in php confronta e linkswf estratti dall'array a varibili fash ricerca e indirizzo.
    		var ricerca = e.target.data.confronta;
    		var indirizzo = e.target.data.linkswf;
    		//Collegamento delle varibili ai campi di testo.
    		Object(this).verifica.text = ricerca; 
    		Object(this).percorso.text = indirizzo;  
    	} 		                         	
    
    }
    Il file swf viene creato senza errore di compilazione.

    Se premo il tasto cerca senza il file php l'output di flash mi dà questo errore:

    Error #2044: ioError non gestito:. text=Error #2032: Errore di flusso. URL:

    file:///trovamedia.php?regione=input_regione&citta=input_c itta
    at cercaevento_fla::MainTimeline/cercaevento()

    Quindi il passaggio delle variabili risulta simile a quello fatto manualmente diretto al file

    trovamedia.php?regione="Lombardia"&citta="Milano"

    che funziona, solo che per flash un contenitore variabile è uguale ad un altro contenitore variabile e non al valore definito.


    Tuttavia non funziona.

    Ho dei dubbi su alcune parti dello scritp ma non so come risolverle!

    La sintassi di questa riga, per quanto riguarda il concatenamento delle variabili

    caricaDati.load(new URLRequest("trovamedia.php?regione=input_regione&c itta=input_citta"))

    E la funzione onLoaded che dovrebbe concatenare i dati delle varibili confornta e linkswf del file php alle variabili ricerca e indirizzo.

    Sono ad un vicolo cieco!

  4. #14
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Prova a togliere il primo & dalla risposta di PHP e codifica la stringa con urlencode(), in pratica

    echo urlencode("confronta=$confronta&linkswf=".trim($da ti[2]));
    al posto di print(...)

  5. #15
    Finalmente sono riuscito a farlo funzionare anche se in parte.

    Lato Flash ho dovuto riscrivere lo script c'erano dell incongruenze tra oggetti e variabili da settare e impostare.

    Ora Flash invia al file php le variabili in POST che le riceve, esegue il confronto tra regione e città e mi rimanda i valori trovato e il link collegato alla coppia regione.
    Per il controllo ho creato degli eventi che attraverso un campo di testo mi informano
    se la connessione allo script inzia, sta in corso o c'è un errore.


    Questo è il file aggiornato trovamedia.php

    codice:
    <?php
    $regione = trim($_POST['regione']); 
    $citta   = trim($_POST['citta']); 
    
    $confronta = "nessun evento"; 
    
    $array_dati = file("dati.txt"); 
    
    foreach($array_dati as $riga) 
    { 
        $dati = explode('||',$riga); 
         
        if (trim($dati[0]) == $regione && trim($dati[1]) == $citta) 
        { 
            $confronta = "trovato"; 
            echo("confronta=$confronta&linkswf=".trim($dati[2]));
    	exit();  
        }
    } 
    print("&confronta=$confronta");
    ?>
    Lato Flash funziona correttamente invia i dati a php che le elabora.
    Flash le recupera e le assegna ai campi.

    Tuttavia non riesce lo script a inviare il valore "nessun evento" se non ci sono coppie corrispondenti.

    Cosa devo fare?

    Grazie ancora per la pazienza e disponibilità!

  6. #16
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    print("&confronta=$confronta");

    togli il carattere & all'inizio, serve solo come separatore nel caso si debbano restituire a Flash più parametri, ma qui ne invii solo 1

    print("confronta=$confronta");

  7. #17

    gestione fonti con Flash php txt RISOLTO

    FUNZIONA!

    Dalla tua ultima risposta ho modificato il file php in questo modo:

    codice:
    <?php
    $regione = trim($_POST['regione']); 
    $citta   = trim($_POST['citta']); 
    
    $confronta = "nessun evento"; 
    $linkswf = "nolink";
    
    $array_dati = file("dati.txt"); 
    
    foreach($array_dati as $riga) 
    { 
        $dati = explode('||',$riga); 
         
        if (trim($dati[0]) == $regione && trim($dati[1]) == $citta) 
        { 
            $confronta = "trovato"; 
            echo("confronta=$confronta&linkswf=".trim($dati[2]));
    	exit();  
        }
        
    } 
    print("confronta=$confronta&linkswf=$linkswf");
    ?>
    Ho definito anche la variabile linkswf con valori iniziali, poi l'ho aggiunta anche nel print in modo che se non trova coppie corrispondenti rimanda il valore originale sia di confronta che di linkswf.

    Ora se inserisco coppie presenti mi ridà trovato e link corrispondente, se inserisco coppie non presenti mi ridà nessun evento e no link.

    E' stata una bella lotta tra AS3 e PHP ma è una soddisfazione vedere che tutto funziona!

    Grazie Alhazred per la pazienza e il supporto!

    VIVA HTML.IT!

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 © 2025 vBulletin Solutions, Inc. All rights reserved.