Pagina 1 di 5 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 42
  1. #1
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126

    Popolare una combobox da database

    ciao, devo popolare un componente combobox di flash con i record estrapolati dal database.. ho cercato un pò ed ho trovato un bel post che però non fà proprio quello che voglio fare io..
    come linguaggio lato server uso asp. Allora diciamo che un pò di codice l'ho scritto, quindi sul primo keyframe della root ho messo il componente combobox e sul keyframe ho inserito questo codice:
    codice:
    stop();
    elenco = new LoadVars();
    elenco.load("documenti.asp");
    elenco.onLoad = function(success) {
    	for (i=o; i<=Number(this.item); i++) {
    		elemento = this["az"+i];
    		_root.combofilm.addItem(i, elemento);
    	}
    };
    Il codice asp è questo:
    codice:
    set rs=server.CreateObject("adodb.recordset")
    sql="SELECT * FROM cat_documenti order by cat"
    rs.open sql, conn,3,3
    do while not rs.eof
    cat=rs("cat")
    response.write("az="&cat)
    rs.movenext
    loop
    Perchè quando lancio l'swf il combobox rimane vuoto?

  2. #2
    A parte che in ASP "az" non è crescente, ma viene sovrascritta sempre la stessa variabile (o almeno così pare guardando il tuo codice...), però in Flash hai scritto for (i=o; i<=Number(this.item); i++)

    Al massimo sarà i=0 e non o

  3. #3
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    ah grazie.. aspè.. però stavo provando un altro codice.. tra pococ lo scrivo.. grazie per aver risposto

  4. #4
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    eccomi.. allora.. ho provato quest'altro codice ma manco và..
    codice:
    stop();
    // Dichiaro
    elenco = new LoadVars();
    // Carico
    elenco.load("documenti.asp");
    // Assegno
    elenco.onLoad = function(success) {
    	for (i=0; i<=Number(this.item); i++) {
    		elemento = this["nome"+i];
    		//link = this["url"+i];
    		_root.myCombo1.addItemAt(i, elemento);//, link);
    	}
    };
    
    // controllo cambio valore
    comboBox = new Object();
    comboBox.cambia = function(component) {
    	getURL(myCombo1.getSelectedItem().data, "_blank");
    };
    //chiamo la funzione al cambio
    myCombo1.setChangeHandler("cambia", comboBox);
    codice:
    set rs=server.CreateObject("adodb.recordset")
    sql="SELECT * FROM cat_documenti order by cat"
    rs.open sql, conn,3,3
    do while not rs.eof
    'id=rs("id")
    cat=rs("cat")
    response.write("nome="&cat)
    rs.movenext
    loop
    pechè dici che "nome" (prima era az) non è crescente? "cat" è crescente.. cioè se lancio la pagina asp, mi mostra normalmente tutti i record.. perchè non mi popola la combobox?

  5. #5
    Originariamente inviato da dops

    codice:
    response.write("nome="&cat)
    pechè dici che "nome" (prima era az) non è crescente? "cat" è crescente.. cioè se lancio la pagina asp, mi mostra normalmente tutti i record.. perchè non mi popola la combobox?
    cat è crescente sì, però nome è sempre uguale, quindi lui non riceverà tante variabili con tanti valori diversi, ma solo l'ultima chè è stata scritta, o forse nemmeno quella perché ci sono miriadi di copie della stessa variabile...

  6. #6
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    Originariamente inviato da thunderlips
    cat è crescente sì, però nome è sempre uguale, quindi lui non riceverà tante variabili con tanti valori diversi, ma solo l'ultima chè è stata scritta, o forse nemmeno quella perché ci sono miriadi di copie della stessa variabile...
    quindi cosa mi consigli di fare affinchè veda i record del database nella combo?

  7. #7
    Innanzi tutto di passargli tutte le variabili che lui richiede con elemento = this["nome"+i]; da Flash, altrimenti se non le riceve non può ovviamente assegnarle alla combobox.

    Se una volta che ti sei accertato che le riceve ancora non funziona significa che c'è ancora qualche altro errore.

  8. #8
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    mh.. ho provato a modificare l'asp così:
    codice:
    set rs=server.CreateObject("adodb.recordset")
    sql="SELECT * FROM cat_documenti order by cat"
    rs.open sql, conn,3,3
    do while not rs.eof
    'id=rs("id")
    cat=rs("cat")
    for i=0 to rs.recordcount
    response.write("nome"&i&"="&cat)
    next
    rs.movenext
    loop
    Nella combo continuo a non visualizzare nulla, ma se lancio la pagina documenti.asp (che è quella che richiamo con load e che contiene il codice di sopra) mi esce fuori questo:

    nome0=Prima categorianome1=Prima categorianome2=Prima categorianome3=Prima categorianome4=Prima categorianome5=Prima categorianome0=Quinta categorianome1=Quinta categorianome2=Quinta categorianome3=Quinta categorianome4=Quinta categorianome5=Quinta categorianome0=Qurta categorianome1=Qurta categorianome2=Qurta categorianome3=Qurta categorianome4=Qurta categorianome5=Qurta categorianome0=Seconda categorianome1=Seconda categorianome2=Seconda categorianome3=Seconda categorianome4=Seconda categorianome5=Seconda categorianome0=Terza categorianome1=Terza categorianome2=Terza categorianome3=Terza categorianome4=Terza categorianome5=Terza categoria
    I record nel database sono solo 5

  9. #9
    Evidentemente il ciclo nel tuo codice ASP necessita di qualche ritocco e/o miglioria

  10. #10
    Utente di HTML.it L'avatar di dops
    Registrato dal
    Jul 2000
    Messaggi
    4,126
    Originariamente inviato da thunderlips
    Evidentemente il ciclo nel tuo codice ASP necessita di qualche ritocco e/o miglioria
    si ma con il codice as che ho gli elementi li riprendo tutti perchè li stampo correttamente in una casella di testo dinamica.. perchè invece nella combobox non li vedo?
    A prescindere dal codice asp intendo che sò già come modificarlo

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.