Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 28

Discussione: Array

  1. #1

    Array

    Salve, utilizzo questo codice per caricare i dati da un file php,
    adesso vorrei sistemare i dati in un Array come posso fare??


    dati = new LoadVars();
    dati.path = this;
    dati.load("www.miosito.it/file.php");
    dati.onLoad = function(){
    come faccio a mettere i dati in un 'array??
    }
    };
    qualcuno mi fà un'esempio.

  2. #2
    Usando il metodo push.

    Ad esempio, supponendo che php ti mandi var0,var1,var2,etc..

    dati = new LoadVars();
    dati.path = this;
    dati.load("www.miosito.it/file.php");
    dati.onLoad = function(){
    arr = new Array()
    for(k=0;k<5;k++){
    arr.push(this['var'+k])
    }

    }
    }

    Giusto per farti capire il concetto

  3. #3
    Grazie adesso provo

  4. #4
    allora non ho capito bene, o meglio non riesco ad utilizzare questa funzione

    io i dati li ricevo cosi

    RagSociale=Emiliano|mail=emiliano@libero.it|RagSoc iale=Marco|mail=marco@marco.com
    adesso come faccio a mettere questi dati in un'array in modo da visualizzarli con il trace cosi:

    Nome: Emiliano
    Mail: emiliano@libero.it

    Nome: Marco
    Mail: marco@marco.com

    in pratica devo anche fare lo split di "|" giusto??
    Grazie

  5. #5
    A parte lo split, se passi più variabili con lo stesso nome probabilmente si "sovrascrivono", quindi ti conviene passarle con nomi diversi o in "gruppi" diversi, es.

    persona1=Emilio|email@mail.com&persona2=Pippo|mail 2@mailozza.com

    In questo modo non si "dan fastidio" tra loro.
    Oltretutto tu praticamente ne passi una sola, non passi variabili separate in quel modo, perchè stai usando solo degli | e non & che serve per far capire a flash "quante sono" le variabili.

    Supponendo che tu ti faccia passare le variabili come dicevo io sopra, facendo uno split su persona1 e su persona 2 otterresti già di suo un array con a [0] il nome e ad [1] la mail.

  6. #6
    ok grazie allora adesso ottengo questi valori

    &RagSociale1=Emiliano&mail1=emiliano@libero.it&Rag Sociale2=Marco&mail2=marco@marco.com
    e in flash ho fatto cosi
    dati = new LoadVars();
    dati.path = this;
    dati.load("http://localhost/cerca.asp");
    dati.onLoad = function(){
    var myArray:Array = new Array();
    for (var i = 0; i < myArray.length; i++) {
    trace (myArray)
    }

    }
    però nel trace non vedo nulla

    :master:

  7. #7
    Ovvio, non ha senso un for con come condizione la lunghezza di in array che hai appena creato (che quindi è 0)

    dati = new LoadVars();
    dati.path = this;
    dati.load("http://localhost/cerca.asp");
    dati.onLoad = function(){
    var myArray:Array = new Array();
    for (var i = 1; i < 2; i++) {
    myArray[i] = new Object()
    myArray[i]["nome"] = this["ragioneSoc"+i]
    myArray[i]["mail"] = this["mail"+i]
    }

    }

    In questo modo avrai ad esempio

    myArray[0]["nome"] -> Emilio

  8. #8
    nel modo che mi hai gentilmente consigliato
    for (var i = 1; i < 2; i++)
    2 l'ho sostituito con il numero totale dei record che mi restituisce ASP trammite la variabile "conta"
    for (var i = 0; i < conta; i++)
    quindi adesso ottengo i valori cosi:

    conta=2&RagSociale1=Emiliano&mail1=emiliano@libero.it&Rag Sociale2=Marco&mail2=marco@marco.com
    scusami vado per gradi altrimenti non capisco bene il concetto
    adesso provo solo a prendere conta cosi
    dati.onLoad = function(){
    var myArray:Array = new Array();
    var conta:Number=conta;
    for (var i = 0; i < conta; i++) {
    }
    trace ("["+i+"] "+conta[i]);
    }
    ma nella finestra di output visualizzo
    questo

    [0] undefined
    perchè??
    conta è uguale a 2

    sembra che non gli arrivi il valore di conta giusto??

    :master:

  9. #9
    Il valore conta gli arriva, per accertartene puoi fare


    trace(this.conta)

    Ma non hai usato il codice che ti ho detto

    dati = new LoadVars();
    dati.path = this;
    dati.load("http://localhost/cerca.asp");
    dati.onLoad = function(){
    var myArray:Array = new Array();
    for (var i = 1; i < conta; i++) {
    myArray[i] = new Object()
    myArray[i]["nome"] = this["ragioneSoc"+i]
    myArray[i]["mail"] = this["mail"+i]

    trace("nome : "+ myArray[i]["nome"])
    trace("mail : " + myArray[i]["mail"])
    }
    }

    Così dovrebbe tracciarti i risultati corretti, il trace che davi tu non aveva senso

  10. #10
    >Ma non hai usato il codice che ti ho detto
    si l'ho provato ma non andava

    ok in effetti i dati a conta arrivano ma come faccio ad assegnare i dati a delle variabili

    ho fatto cosi ma non và

    dati = new LoadVars();
    dati.path = this;
    dati.load("http://localhost/cerca.asp");
    dati.onLoad = function() {
    var myArray:Array = new Array();
    for (var i = 1; i<conta; i++) {
    myArray[i] = new Object();
    myArray[i]["nome"] = this["RagSociale"+i];
    myArray[i]["mail"] = this["mail"+i];
    // questi due trace rimangono vuoti!!
    trace("nome : "+myArray[i]["nome"]);
    trace("mail : "+myArray[i]["mail"]);
    }
    // se provo ad assegnare il valore di nome di myArray ad una variabile sulla root, rimane vuota
    valoreNome = dati.myArray[i]["nome"];
    };
    se non ti da fastidio, posso inviarti il mio fla cosi gli dai uno sguardo tu?

    Grazie mille sei gentilissimo

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.