Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di lucalicc
    Registrato dal
    Sep 2002
    Messaggi
    6,926

    utilizzare variabile nel campo del recordset

    il titolo non è molto chiaro ma non sapevo come meglio indicare il mio problema:

    una volta estratto un recordset, ci sono diversi campi con un nome simile e un suffisso incrementale del tipo:

    rs("var1")
    rs("var2")
    ...
    rs("var9")

    devo controllare i valori di questi campi, per ora lo faccio 9 volte in questo modo:

    if rs("var1") = "rosso" then.....
    if rs("var2") = "verde" then.....
    ...
    if rs("var3") = "blu" then.......

    questo modo funziona perfettamente ma è un po macchinoso.
    Volevo sapere se ci fosse un modo più elegante del tipo:

    for ii = 1 to 9
    if rs("var"+ii) = "rosso" then.....
    next ii

    ovviamente questo metodo non funziona
    grazie
    Luca
    www.intheweb.it - Internet solutions

  2. #2
    se i campi sono contigui, e conosci la posizione di inizio, puoi provare ad usare l'indirizzamento numerico campo(n)

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ciao Luca, a parte il fatto che hai scritto due ii di troppo nel for
    for ii = 1 to 9
    if rs("var"+ii) = "rosso" then.....
    next ii
    dovrai poi aggiungere 9 else o un array per i colori, non vedo i vantaggi se non 3/4 righe in meno di codice
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    andre', scrivere 'next ii' (mettendo cioè la variabile dopo la next) NON è illegale

  5. #5
    Utente di HTML.it L'avatar di lucalicc
    Registrato dal
    Sep 2002
    Messaggi
    6,926
    quello era solo un esempio.
    di fatto devo controllare la corrispondenza dei campi del recordset
    con una variabile, la forma completa è questa:

    if rs("variabile1") <> "" then
    if rs("variabile1") = strVar then response.write("selected = 'selected'")
    end if

    tralascio il codice per la creazione della select.

    Si tratta di una select dinamica che prende i dati da un recordset e li confronta
    con valore preso da un'altro recordset.
    E' nella gestione di un carrello, per prendere tutte le varianti di un
    articolo (ad es. taglia, colore ecc.) e impostarlo uguale a quello del
    prodotto messo nel carrello dall'utente, con la possibilità di modificare
    la variante nel resoconto del carrello, prendendo tutte le varianti possibili
    per quell'articolo (i nove campi) e impostando di default quello scelto dall'utente.

    Il codice funziona perfettamente solo che devo ripetere la struttura nove volte.
    Volevo fare un ciclo per rendere il codice più pulito, efficiente e scalabile.
    luca
    www.intheweb.it - Internet solutions

  6. #6
    segui il mio suggerimento

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.