Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Variabile che si perde

  1. #1

    Variabile che si perde

    Buonasera a tutti, dopo anni che non postavo più torno a chiedere il vostro aiuto perchè sto rischiando l'esaurimento nervoso

    Vi spiego brevemente il mio problema:

    ho un swf esterno (prodotti) che carico all'interno di un altro movieclip(istanziato esterni) contenuto nel swf principale. Questo mc una volta caricato richiama tramite script php un valore contenuto in un db mysql e fin quì tutto bene. La variabile richiamata si chiama _global.numprod che praticamente mi servirebbe successivamente per duplicare un altro mc.

    Il codice per fare il caricamento di questa variabile è sul mc "prodotti" interno al mio swf ed è il seguente:
    Codice PHP:
    onClipEvent (load) {
        
    caricanumprod = new LoadVars();
        
    caricanumprod.onLoad = function(success) {
        if (
    success) {
           
    _global.numprod this.num_prod;
        } else {
           
    trace("caricamento non riuscito");
           }     
    };     
    caricanumprod.load("car_numprod.php"); 

    Una volta caricata la variabile, all'interno del mc "prodotti" ho inserito un ciclo for per duplicare il mc scheda prodotto che caricherà a sua volta i dati relativi al prodotto, ma qua viene fuori il problema, cioè la variabile _global.numprod si perde, o meglio sembra che non la riconosco più come numero...
    Il codice che utilizzo per duplicare il mc è il seguente:

    Codice PHP:
    Number(_global.numprod);
    for (
    i=0i<_global.numprodi++) {
         
    duplicateMovieClip(prodotto1"prodotto"+ii);
         
    this["prodotto"+i]._x this.prodotto1._x+60;
     } 
    Ho già provato in tutte le maniere a dirgli che _global.numprod è un numero ma non ne vuole sapere. Ho anche provato a non dirglielo...le ho provate tutte insomma ma non ne vengo a capo

    Se invece di caricare la variabile dal db gliela dichiaro direttamente io funziona perfettamente, ma essendo un valore legato al numero dei prodotti presenti nel db non posso fare altrimenti.

    Aiutatemi perfavore

  2. #2
    se fai
    codice:
    trace(_global.numprod)
    Number(_global.numprod);
    for (i=0; i<_global.numprod; i++) {
         duplicateMovieClip(prodotto1, "prodotto"+i, i);
         this["prodotto"+i]._x = this.prodotto1._x+60;
     }
    che viene fuori?
    Non è che per caso il ciclo for parte prima che _global.numprod sia valorizzata?

  3. #3
    il ciclo for si trova sulla timeline al terzo frame del mc...sul primo frame ho inserito un if che controlla se _global.numprod è diverso da 0, quindi se va al terzo frame è perchè viene valorizzata...comunque per sicurezza ho messo anche un mc di controllo con un enterframe che mi visualizza in una textarea il valore della variabile...

    scusa la mia ignoranza ma non uso flash con connessione a db da una vita e il trace come faccio a visualizzarlo online? in locale non funziona ovviamente perchè non ho apache installato, quindi lavoro direttamente online...

  4. #4
    online è un po' complicato dovresti usare dei plugin per FF, comunque basta che da flash metti il percorso assoluto tipo

    LoadVars.sendAndLoad("http://tuoserver.it/pagina.php")

    E ti funziona anche in locale

  5. #5
    Originariamente inviato da Stan
    online è un po' complicato dovresti usare dei plugin per FF, comunque basta che da flash metti il percorso assoluto tipo

    LoadVars.sendAndLoad("http://tuoserver.it/pagina.php")

    E ti funziona anche in locale
    non ci avevo pensato

    adesso provo, vediamo che esce e ti dico

  6. #6
    ho risolto...gli script sono giusti ma...se ti dico cosa mi caricava insieme alla variabile non ci credi e non so nemmeno per quale motivo lo facesse, comunque...mi spediva insieme al valore della variabile anche i tag <body></body> della pagina php e non capisco per quale assurdo motivo lo facesse...vabè, ho perso inutilmente 2 giorni di lavoro quando bastava un semplice trace per trovare la magagna.

    Grazie Stan, alla prossima

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.