Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 26
  1. #1
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400

    Popolamento select da db access

    Buongiorno.

    In una colonna di una tabella access ho queste date:

    2006/08/10
    2006/08/10
    2006/08/10
    2006/08/10
    2006/08/18
    2006/08/18
    2006/08/18
    2006/08/18
    2006/09/01
    2006/09/01
    2006/09/04
    2006/09/04

    Come faccio a far popolare una select prendendo i dati dalla tabella e far apparire soltanto il nome del mese raggruppandolo?

    Cioè dovrei avere nella select:

    Agosto
    Settembre

    Sapete consigliarmi una soluzione?

  2. #2
    ma perchè tu nella select vuoi soltanto i mesi presenti nel DB?

    es:

    Agosto
    Ottobre
    Dicembre
    ...ancora credi a internet? :maLOL:

  3. #3
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Si esatto solo quelli.

  4. #4
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Ho scritto così, il nome del mese va bene ma non si raggruppano:

    codice:
    <%
    
    sql = "SELECT data FROM tbl GROUP BY data ORDER BY data asc" 
    Set rec = Server.CreateObject("ADODB.Recordset")
    rec.Open sql, conn, 3, 3
    Do While Not rec.EOF
    
    strVAR = rec("data")
    strVAR = Month(strVAR)
    
    strMese = (Array("","Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"))(strVAR)
    
    %>
    
    <option	value="<%=strMese%>"
    <%if strMese = cstr(strVar) then response.write("selected") end if%>>
    <%=strMese%></option>	
    
    <%
    rec.MoveNext
    Loop
    
    rec.Close
    set rec = Nothing
    %>

  5. #5
    allora c'è un pò da lavorare...

    estrai le date (con una order by delle date) dal db e riempiti una stringa tipo
    <%
    ' supponendo che sei nel ciclo della richiesta al db

    appomese = split(rs(data),"/")
    if appomese(1) <> mesepreso then

    date_db = date_db & appomese(1) & "*"

    end if
    mesepreso = appomese(1)


    'una volta finito il ciclo avrai all'interno di date_db "08*09*10" e via dicendo
    'poi nella select...

    date_db = split(date_db,"*")
    %>
    <select>
    <%
    for i=0 to ubound(date_db)

    select case date_db(i)

    case "01"
    %>
    <option>gennaio</option>
    <%
    'e via dicendo per i rimanenti mesi

    end select

    next
    %>
    </select>

    vedi un pò!
    scusa per eventualii errori ma ho scritto di getto devo andà a pranzoooo!!!
    ...ancora credi a internet? :maLOL:

  6. #6
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Originariamente inviato da wegawhite
    Ho scritto così, il nome del mese va bene ma non si raggruppano:

    codice:
    <%
    
    sql = "SELECT data FROM tbl GROUP BY data ORDER BY data asc" 
    Set rec = Server.CreateObject("ADODB.Recordset")
    rec.Open sql, conn, 3, 3
    Do While Not rec.EOF
    
    strVAR = rec("data")
    strVAR = Month(strVAR)
    
    strMese = (Array("","Gennaio","Febbraio","Marzo","Aprile","Maggio","Giugno","Luglio","Agosto","Settembre","Ottobre","Novembre","Dicembre"))(strVAR)
    
    %>
    
    <option	value="<%=strMese%>"
    <%if strMese = cstr(strVar) then response.write("selected") end if%>>
    <%=strMese%></option>	
    
    <%
    rec.MoveNext
    Loop
    
    rec.Close
    set rec = Nothing
    %>
    Hai già letto questo ?

  7. #7
    si l'ho letto, ma così ottieni la lista ripetua dei mesi...

    se vuoi applicare quello che ti ho scritto prima fai così:

    <%

    sql = "SELECT data FROM tbl GROUP BY data ORDER BY data asc"
    Set rec = Server.CreateObject("ADODB.Recordset")
    rec.Open sql, conn, 3, 3
    Do While Not rec.EOF

    appomese = split(rec("data"),"/")
    if appomese(1) <> mesepreso then

    date_db = date_db & appomese(1) & "*"

    end if

    mesepreso = appomese(1)

    rec.MoveNext
    Loop

    rec.Close
    set rec = Nothing

    date_db = split(date_db,"*")

    %>
    <select>
    <%
    for i=0 to ubound(date_db)

    select case date_db(i)

    case "01"
    %>
    <option value="Gennaio" selected >Gennaio</option>
    <%
    ' e via dicendo

    end select

    next
    %>
    </select>


    oppure non ho capito ciò che vuoi ottenere? mostra l'output che ti serve nella select.
    ...ancora credi a internet? :maLOL:

  8. #8
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    L'output dovrebbe essere questo:

    Agosto
    Settembre

  9. #9
    e allora perchè non provi il codice che ti ho scritto?
    ...ancora credi a internet? :maLOL:

  10. #10
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Originariamente inviato da littletoro
    e allora perchè non provi il codice che ti ho scritto?
    Perchè non funziona:

    Error Type:
    ADODB.Field (0x80020009)
    Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

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.