• User Attivo

    caricamento file swf con variabile passata dall'html

    Salve a tutti, devo risolvere questo problemino, ho una pagina html contenente un file swf, il codice che uso per caricarlo è il seguente

    
    <script language="JavaScript" type="text/javascript">
    <!-- 
    var hasRightVersion = DetectFlashVer(requiredMajorVersion, requiredMinorVersion, requiredRevision);
    if(hasRightVersion) {  // se è stata rilevata una versione accettabile
        if (AC_FL_RunContent == 0) {
            alert("Questa pagina richiede AC_RunActiveContent.js. In Flash, selezionare \"Applica Aggiornamento per contenuto attivo\" nel menu Comandi per copiare AC_RunActiveContent.js nella cartella di output HTML.");
        } else {
            // incorpora il filmato Flash
            AC_FL_RunContent(
                'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0',
                'width', '494',
                'height', '299',
                'src', 'Flash/miofile',
                'quality', 'high',
                'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
                'align', 'middle',
                'play', 'true',
                'loop', 'true',
                'scale', 'showall',
                'wmode', 'window',
                'devicefont', 'false',
                'id', 'Flash/miofile',
                'bgcolor', '#e1d9c2',
                'name', 'Flash/miofile',
                'menu', 'false',
                'allowScriptAccess','sameDomain',
                'movie', 'Flash/miofile',
                'salign', ''
                ); //end AC code
        }
      } else {  // la versione di Flash è troppo vecchia o non è possibile rilevare il plug-in
        var alternateContent = 'Il contenuto HTML alternativo deve essere posizionato qui.'
          + 'Questo contenuto richiede Macromedia Flash Player.'
           + '<a href=http://www.macromedia.com/go/getflash/>Ottieni Flash</a>';
        document.write(alternateContent);  // Inserisci contenuto non Flash
      }
    // -->
    </script>
    
    ```In pratica vorrei passare una variabile al file swf tramite il codice che lo richiama nel file html, ovvero questo codice.
    
    ho provato modificando così la riga scr
    

    'src', 'Flash/miofile?variabile=valore',

    come potei fare?

  • User Attivo

    ok, scusatemi, fino qui ci sono riuscito, sbagliavo nel caricare la variabile nel file swf, ora però dovrei far si che da un link di un'altra pagina, venga caricata una variabile nel file html che debba essere passata al file swf.
    esempio
    questo è il codice che da un link richiama la pagina html che contiene il file
    <a href="pagina.html?miavariabile=1">>></a>

    nella pagina html credo dovrei inserire questa stringa
    variabie1=miavariabile;

    e nel codice AS che richiama il file swf questa
    'scr', 'Flash/miofile?variabile=variabile1',

    • o meno dovrei fare qualcosa di simile, mi dareste una mano per correggere gli errori?

  • User Attivo

    correggo un errore, la linea che passa la variabile al file swf non è 'scr' ma 'movie'
    quindi la riga di codice è questa
    'movie', 'Flash/miofile?variabile=valore',


  • Super User

    Buonasera Adriano,

    come gia detto non conosco la risposta a quel problema. Perche non usare il swfObject che funziona benissimo e molto piu facile da aggiungere parametri?:D


  • User Attivo

    scusa se rispondo solo adesso ma non mi solo collegato ultimamente, dunque, il trasferimento della variabile al file swf funziona benissimo, l'unico problema che ho ancora si presenta quando provo ad inserire una variabile che contiene appunto la stringa ?variabile=1, del tipo myvar="?variabile=1";
    se io inserisco la variabile al posto della stringa non funziona più, ne ho la necessità perché questa variabile cambia a seconda del link che richiama il la pagina, link1 = ?variabile=1, link2 = ?variabile=2, ecc...
    a seconda del valore avrò dei cambiamenti nel file swf. Non devo cambiare la pagina html che contiene il file swf, devo solo richiamarla da link diversi.


  • Super User

    Ciao Adrianno,

    sto provando a capire. Non sono cose che ho mai fatto per quello ci devo pensare.:D

    Se ho capito bene la struttura, in semplice italiano.
    In pag1.html hai un filmato flash e da un link in pag2.html che rimenda a pag1.html, stai provando di fare passare il valore d'una variabile al flash???:?

    Scusa se sono tosta a capire.:(


  • User Attivo

    Esattamente, voglio solo passare un valore al file flash presente su un'altra pagina.


  • Super User

    E non funziona con il <a href="pag1.html?variabile=1"> al link? :bho:


  • User Attivo

    no, o meglio, la variabile viene passata alla pagina html ma non riesco a passarla al file swf, se il valore lo scrivo direttamente nel codice che richiama il file swf funziona, ma non è così che deve funzionare.


  • Super User

    Direi che ti serve qualche funzione php (o javascript :bho:) che permettono di riprendere quel valore e l'aggiungere al codice che richiama il swf quando la pagina viene caricata. Personalemente non so ne uno ne l'altro.:bho:


  • User Attivo

    secondo me il problema sta nel tipo di codifica che viene fatta, forse ho capito come fare ma devo studiare un po' di più JS, se riesco a risolvere il problema ti spiego come ho fatto. Grazie mille per l'aiuto.


  • Super User

    Prego, non è che ho potuto aiutarti molto.:D


  • User Attivo

    mi hai aiutato in partenza


  • User Attivo

    Problema risolto ma utilizzando un metodo differente, ovvero ho usato la funzione switch, a seconda della variabile inviata tramite QueryString ho caricato un codice differente per richiamare il file swf, in ogni codice ho inserito la già la variabile che volevo inviare al file swf.
    Ora ho un bel form realizzato in flash che non solo fa il controllo dei campi e dell'indirizzo e-mail ma inserisce in automatico l'oggetto della mail che invierà a seconda del collegamento che va a richiamare la pagina html che lo contiene.


  • Super User

    Complimenti.:brindisi:

    Adesso, ti tocca a scrivermi un tutorial personale spiegando il tutto.:D


  • User Attivo

    Ok, però sarà lunghetto, appena ho un po' di tempo lo preparo.


  • User Newbie

    ciao Adriano,
    scusami se ti disturbo ma mi trovo a dover affrontare un problema molto simile (almeno penso)
    Voglio che al click su un bottone flash si apra un nuovo swf che contenga un form con un riferimento diverso a seconda del bottone su cui hanno cliccato.
    In pratica voglio che un campo del mio form legga lo stesso file di testo che legge un dynamic text (di un altro swf) a cui e` collegato il bottone.

    Puoi aiutarmi?
    o puoi postarmi o allegarmi quello che hai fatto tu? cosi ci studio un po` su.

    Grazie