Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 22
  1. #1

    Estrapolare dati da una stringa separata da virgole

    Ciao a tutti,

    da un campo a scelta multipla ricevo tramite form dati nel seguente formato:

    Pubblicitario, Webmaster, Tecnico

    Io devo inserire ogni singolo dato all'interno di una variabile diversa quindi:
    professione1= Pubblicitario
    professione2=Webmaster
    professione3=Tecnico
    e cosi' via.. in modo dinamico per quante sono i dati in arrivo dal form.

    Ho provato qualcosa del genere:

    area_professionale=request.form("professione")
    ' identifico la posizione della prima, seconda e terza virgola

    for i= 1 to ....
    var1=InStr(area_professionale, ",")
    var2=InStr([var1],area_professionale, ",")
    var3=InStr([var2],area_professionale, ",")


    ma non va.. ho provato con mid:
    Mid(area_professionale,var2,[var3])
    ma niente.

    Qualcuno mi sa dire come fare ad estraporare tutti i singoli dati e a matterli in altrettante variabili?
    Grazie tante.

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    str = "Pubblicitario, Webmaster, Tecnico"
    arr_str = split(str,",")
    for xElem = 0 to Ubound(arr_str)
    response.write(trim(arr_str(xElem)) &"
    ")
    next
    Roby

  3. #3
    Perfetto per la stampa a video ma se volessi riutilizzare questi dati estratti dovrei metterli dentro una variabile dinamica?

    Estraggo il primo dato -> var1=dato1
    Estraggo il secondo dato -> var2=dato2
    Estraggo il terzo dato -> var3=dato3

    etc...

  4. #4
    Hai già l'array che contiene i dati divisi da virgola.

  5. #5
    E' vero ho gia' l'array ma nel pratico non riesco ad utlizzarlo per il mio scop.

    1. Prelevo la stringa dal form [FATTO]
    2. Estrapolo dalla stringa i singoli dati separati da virgola [FATTO]
    3. Registro ogni singolo dati estratto in un campo specifico di un database [DA FARE]

    Per il punto 3 la soluzione mi sembrava quella di associare ogni dato estratto ad una variabile dinamica e poi memorizzare questa nel campo del database.

    Invece con l'array come dovrei fare?:master:
    Grazie

  6. #6
    invece di usare (ad esempio) sNome userai Array(2)

  7. #7
    In concreto come modifichereste questo codice per inserire i dati estratti dentro dei campi del database?

    1.str=request.form("job") ' Prelevo il dato proveniente dal form

    2. arr_str = split(str,",")
    3. for xElem = 0 to Ubound(arr_str)
    4. response.write(trim(arr_str(xElem)) &"
    ") 'stampo il dato estratto a video

    5. inserisco il dato estratto all'interno del database.

    6. next ' ricomincio il ciclo

    Io ho provato con profilo(xElem)=trim(arr_str(xElem))

    ma ricevo errore...

    Cosa metteresti nella riga 5?

    Grazie tante.

  8. #8
    giotto... come la faresti normalmente?

  9. #9
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Devi fare un UPDATE o una INSERT prima di tutto?
    Devi in ogni caso costruirti dinamicamente la qeury DENTRO al ciclo e poi, una volta completa di tutti i campi e di tutti i valori, la eseguirai FUORi dal ciclo.
    Es.

    codice:
    sql = "UPDATE tabella SET "
    txt = ""
    for ....
    'recuperi valore
    if txt = "" then
    txt = "campo = '"& valore &"'"
    else
    txt = txt &", campo = '"& valore &"'"
    end if
    next
    
    
    sql = sql & txt &" WHERE pippo='pluto'"
    conn.execute(sql)
    Ragionaci un po'.

    Roby

  10. #10
    in concreto io ho risolto cosi'.

    1.str=request.form("job") ' Prelevo il dato proveniente dal form
    2. arr_str = split(str,",")
    3. for xElem = 0 to Ubound(arr_str)
    4. response.write(trim(arr_str(xElem)) &"
    ") 'stampo il dato estratto a video
    5. if xElem=0 then
    profilo1=trim(arr_str(xElem))
    end if
    if xElem=1 then
    profilo2=trim(arr_str(xElem))
    end if
    if xElem=2 then
    profilo3=trim(arr_str(xElem))
    if xElem>2 then
    ...
    6. next ' ricomincio il ciclo


    Non è certamente "dinamico" come metodo ma intanto ho ottenuto quello che volevo.
    Voi come lo renderesti totalmente dinamico?
    Grazie ancora.

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.