Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 37
  1. #1
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496

    [Flash 8] - Caricare dati da pagina php

    Ciao!
    Ho provato a fare il caricamento di dati da una pagina php, di cui riporto il codice:
    Codice PHP:
    <?
    echo "&nome=";
    switch (
    $_GET['id'])
    {
        case 
    1:
        echo 
    "Home";
        break;
        case 
    2:
        echo 
    "Chi Siamo";
        break;
        case 
    3:
        echo 
    "La Struttura";
        break;
        case 
    4:
        echo 
    "Cos'è la PMA";
        break;
        case 
    5:
        echo 
    "Come Lavoriamo";
        break;
        case 
    6:
        echo 
    "Il Trattamento";
        break;
        case 
    7:
        echo 
    "Guestbook";
        break;
        case 
    8:
        echo 
    "Dove Siamo";
        break;
        case 
    9:
        echo 
    "Contatti";
        break;

    }
    echo 
    "&";
    ?>
    come descritto nella "pillola" in questa pagina.

    Nel primo e unico frame della presentazione ho inserito questo codice:
    codice:
    var percorso = new String("http://localhost/sito/pagina.php?id=");
    var nome = new String;
    var carica = new LoadVars();
    carica.onLoad = function(success) {
        if(success) {
            _root.nome = this["nome"];
            trace(nome);
        }
        else {
            trace("Errore nel caricamento file!");
        }
    
    	carica.load(percorso+"1");
    	home.text=_root.nome;
    	carica.load(percorso+"2");
    	chisiamo.text=_root.nome;
    	carica.load(percorso+"3");
    	lastruttura.text=_root.nome;
    	carica.load(percorso+"4");
    	pma.text=_root.nome;
    	carica.load(percorso+"5");
    	comelavoriamo.text=_root.nome;
    	carica.load(percorso+"6");
    	iltrattamento.text=_root.nome;
    	carica.load(percorso+"7");
    	guestbook.text=_root.nome;
    	carica.load(percorso+"8");
    	dovesiamo.text=_root.nome;
    	carica.load(percorso+"9");
    	contatti.text=_root.nome;
    Il problema è che nella finestra di Output mi appare l'item in posizione 9 ("Contatti"), il che significa che ha caricato tutti gli item; ma vado a vedere la presentazione e le textbox sono vuote.
    Ora mi chiedo, ciò è dovuto ad una parametrizzazione errata delle textbox (devo modificare qualcosa?), oppure l'errore è nel codice?
    Grazie anticipatamente per la risposta

  2. #2
    scusami ma che è

    carica.load(percorso+"1");
    home.text=_root.nome;
    carica.load(percorso+"2");

    carica.load(percorso+"1"); lo usi tante volte ma devi caricare + file o uno solo??


    poi la var viene presa in questo modo

    _root.home.text=carica.nome;

    se la var stampata è nome e la vuoi associare ad una casella la cui istanza è home

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  3. #3
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    sono un amico di EngLab, rispondo io per lui:

    codice:
    carica.load(percorso+"1");
    home.text=_root.nome;
    carica.load(percorso+"2");
    home.text=_root.nome;
    lo scopo di questo codice è richiamare il file lang.php passandogli ogni volta un id diverso. Infatti, in base all'id passato, restituisce una stringa diversa. Una volta ottenuta questa stringa, devo poterla mettere in una textbox, ma nn riesco in nessun modo!
    anche facendo

    _root.home.text=carica.nome;

    nn funziona!

    help!

  4. #4
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496

    Non ci riesco

    Ho provato a seguire il tuo consiglio, ma la funzione "carica" non mi restituisce niente, o meglio, mi restituisce "undefined".
    Cerco di spiegare un po' meglio ciò che vorrei ottenere dallo script:
    Il file php ha memorizzate al suo interno varie stringhe che, in base alla chiamata al file, vengono emesse nella pagina sul browser del client. La pagina si chiama lang.php, quindi per poter fare una chiamata, ad esempio, alla stringa numero 3, la pagina sarà chiamata lang.php?id=3 .
    Io vorrei, con il codice AS che ho incollato nel precedente post, caricare tutte e stringhe dalla 1 alla 9 e memorizzarle nella textbox.
    Ora, la funzione trace(nome) dà nella finestra di output l'ultima stringa (la nona), il che significa che l'accesso al file è stato eseguito correttamente e la variabile memorizzata in memoria. Ora vorrei che questa variabile venisse "scritta" nella textbox. Questa funzione deve lavorare prima sulla prima stringa, poi sulla seconda, sulla terza ecc ecc... Non è importante fare un ciclo, l'importante è ke la variabile venga memorizzata nella textbox.
    Qui sotto allego, con i dovuti commenti, il
    codice:
    // questo è il percorso base della pagina lang.php
    var percorso = new String("http://localhost/orion/lang.php?id=");
    // questa è la variabile che memorizzerà le stringhe, una alla volta
    var nome = new String;
    // ora preparo il caricamento del file php
    var carica = new LoadVars();
    carica.onLoad = function(success) {
        if(success) {
    // memorizzo, nella variabile nome, il risultato della pagina php
            _root.nome = this["nome"];
    // per gestire gli errori, faccio stampare nella finestra di output il nome della variabile memorizzata
            trace(nome);
        }
        else {
            trace("Errore nel caricamento file!");
        }
    }
    // percorso + "#" sta ad indicare la pagina lang.php?id=#, che mi permette di richiedere la stringa in posizione #
    	carica.load(percorso+"1"); 
    // l'oggetto home è la casella di testo, nella quale, tramite l'attributo .text voglio inserire il contenuto della variabile nome prima dichiarata
    	home.text=_root.nome;
    // codice uguale per i # da 2 a 9
    Ripeto che il codice l'ho prelevato da questa pillola da questo stesso forum.
    Prego l'autore della pillola, andr3a, di aiutarmi.
    Grazie a tutti voi per la pazienza.

  5. #5
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    Nessuno sa come aiutarmi? Eppure è strano, questa è una funzione che in molti dovrebbero usare..
    Chi ha mai fatto interagire Flash con PHP?

  6. #6
    ma scusa invece di inviare un id xchè nn le carichi tutte le var se è questo che vuoi ottenere


    e poi come dicevo x recuperare la var
    usi
    home.text=_root.nome;


    ma devi usare

    home.text=carica.nome;

    e poi devi mettere questa istruzione nel success altrimenti nn ti funge
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  7. #7
    infatti cmq le leggi tutte nn è che le carichi in un secondo momento

    quindi io farei diversamente

    &var1=primavar&var2=seconda&var3=terza&var4=...... .etc&

    poi le leggerei tutte e le metterei nelle relativa caselle di testo sempre con loadvars

    oppure forse nn ho capito ancora
    ps
    (mi sembra che sono le scritte di un menu che vuoi caricare)
    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

  8. #8
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    esattamente, sono le voci di un menu che possono cambiare. La pagina php mi consente la dinamicità di queste.
    Ho provato a cambiare il codice, ma non riesco a capire come fare
    ma devi usare
    home.text=carica.nome;
    e poi devi mettere questa istruzione nel success altrimenti nn ti funge
    Potresti per favore cambiare il codice che sto utilizzando io come dici tu e incollarlo nella risposta? Non riesco proprio a capire come fare...
    Grazie!!!

  9. #9
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    scusa ma se io all interno della funzione voglio settare una variabile che sia leggibile anche esternamente, come faccio??

  10. #10
    Originariamente inviato da EngLab
    esattamente, sono le voci di un menu che possono cambiare. La pagina php mi consente la dinamicità di queste.
    Ho provato a cambiare il codice, ma non riesco a capire come fare

    Potresti per favore cambiare il codice che sto utilizzando io come dici tu e incollarlo nella risposta? Non riesco proprio a capire come fare...
    Grazie!!!
    allora vediamo come fare
    se ho ben capito vuoi che ad una data chiamata la pag php ti stampa le voci del menu

    di php nn ne capisco una mazza (uso asp) ma alla fine è la stessa cosa

    facciamo un es con un file txt
    supponendo che nel file txt ci sia questo e lo chiamo prova.txt
    codice:
    &tot=4&
    &titolo1=Prima mia&link1=http://www.prova.it&
    &titolo2=Seconda sezione&link2=http://www.leonardoinformatica.it&
    &titolo3=Terza sezione&link3=http://www.leonardoinformatica.it&
    &titolo4=Quarta sezione&link4=http://www.leonardoinformatica.it&
    poi dopo ovviamente usando la pag php devi farti restituire la stessa formattazione l'unica cosa in + che ci serve sapere è il num di voci che ti restituisce cmq in ogni caso basta che fai stampare quello che io ho scritto nel txt

    poi nel file flash
    Codice PHP:
    myLoadVars = new LoadVars();
    myLoadVars.onLoad = function(success){
        if(
    success){
            for(
    i=1;i<=myLoadVars.tot;i++){
                
    _root.attachMovie("cont""cont"+ii);
                if(
    _root["cont"+i] != _root.cont1){
                    
    _root["cont"+i]._y _root["cont"+Number(i-1)]._y+42;
                } else {
                    
    _root["cont"+i]._y 0;
                }
                
    _root["cont"+i].link myLoadVars["link"+i];
                
    _root["cont"+i].titolo.text myLoadVars["titolo"+i];
                
    trace(i);
            }
        }else{
            
    trace("problemi con il file di testo");
        }
    }
    myLoadVars.load("prova.txt"); 
    che quindi ti genera tanti mc a seconda delle voci del menu

    ovviamente dovrai avere un mc nella libreria
    esportato x AS con il nome di cont in cui ci sarà una casella di testo dinamica con istanza titolo
    nell'es ho messo anche un semplice getUrl ad un link ma si può mettere qualsiasi azione

    la verità non è una meretrice che si getta al collo di chi non la vuole ma anzi essa è dotata di una così altera bellezza che anche chi sacrifica tutto per ottenerla non è sicuro di averla raggiunta !

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