Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246

    Raggruppare dati in base al mese

    Ciao a tutti,
    devo impaginare una serie di dati in base al mese del tipo:

    Mese(gennaio)
    e tutti i dati che sono stati precedentemente inseriti che hanno come mese gennaio

    Mese(febbraio)
    e tutti i dati che riguardano febbraio...
    ecc ecc

    Sono arrivata a questo punto:

    'select per estrarrei dati in ordine di data
    Set RSGare = Server.CreateObject("ADODB.Recordset")
    sqlGare = "Select * From tbl_gare Order By data"
    RSGare.Open sqlGare, DFCon, 1, 1
    If Not RSGare.EOF Then
    bgcolorbol = 0

    'ciclo
    While Not RSGare.Eof

    'recupero il mese
    Mese = RSGare("mese")
    %>

    <tr bgcolor="#C6D2E9">
    <td width="35%" class="testo"><font face="Tahoma" size="2" class="testo_lilla"><%= UCase(Monthname(Mese))%></font></td>
    <td width="25%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    <td width="14%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    <td width="12%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    <td width="14%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    <td width="14%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    </tr>

    poi nella riga sottostante metto le altre informazioni e mi fa il ciclo

    <%
    RSGare.MoveNext
    Wend
    End If
    PuliziaRS(RSGare)
    %>

    Ho pensato di mettere un controllo dopo il ciclo così da verificare se il mese è uguale, se sì come?

    grazie dei consigli
    elisa

  2. #2
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    Ciao elisa21,

    tu ordini per il campo data e poi hai anche il campo mese?
    Comunque sarebbe + o - così
    codice:
    <%
    'select per estrarrei dati in ordine di data
    Set RSGare = Server.CreateObject("ADODB.Recordset")
    sqlGare = "Select * From tbl_gare Order By data"
    RSGare.Open sqlGare, DFCon, 1, 1
    If Not RSGare.EOF Then
    	bgcolorbol = 0
    	Mese=""
    	'ciclo
    	While Not RSGare.Eof 
    		if Mese<>RSGare("mese") then
    			Mese = RSGare("mese")%>
    	  <tr bgcolor="#C6D2E9"> 
    	    <td width="35%" class="testo"><font face="Tahoma" size="2" class="testo_lilla"><%= UCase(Monthname(Mese))%></font></td>
    	    <td width="25%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    	    <td width="14%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    	    <td width="12%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    	    <td width="14%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    	    <td width="14%" align="left" valign="middle" class="testo"><font face="Tahoma" size="2"></font></td>
    	  </tr><%
    		end if%>
    
    		poi nella riga sottostante metto le altre informazioni e mi fa il ciclo
    
    	<%
    		RSGare.MoveNext
    	Wend
    End If
    PuliziaRS(RSGare)
    %>

  3. #3
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246
    e vaii!!

    grazie mille

    elisa

  4. #4
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246
    Adesso ho un problema nel form di inserimento db che poi i risulitati verranno visualizzati nella suddetta tabella.

    Ho il form con i vari campi tra i quali il campo mese che recupero utilizzando DatePart per permettere quindi alla procedura di estrarre solo il mese e metterlo nella relativa tabella del db.

    Al momento dell'invio form ricevo questo errore:

    Microsoft JET Database Engine error '80040e14'

    Syntax error in INSERT INTO statement.

    /adm/gestione_gare.asp, line 140

    alla linea 140 ho:
    codice:
    RSInsert.Open sqlInsert, DFCon, 3, 3

    perè credo che il problema non sia lì ma nell'inserimento dei dati.
    Ho settato il recupero del mese in questo modo:

    codice:
    mese = DatePart("m", data)
    dove data è

    codice:
    data = Trim(Request.Form("data"))
    potrebbe essere questo l'errore?

    grazie dell'aiuto
    elisa

  5. #5
    Utente di HTML.it L'avatar di colde
    Registrato dal
    Feb 2001
    Messaggi
    1,802
    Prova a postare anche la stringa SQL che usi per l'inserimento in DB.
    www.beppegrillo.it
    Il blog di Beppe!!

  6. #6
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    codice:
    data = Trim(Request.Form("data"))
    così data è una stringa. In che formato è la data? gg/mm/aaaa? fai un controllo sintattico? Per il mese puoi usare anche la funzione Month
    mettiamo che la data sia in formato gg/mm/aaaa
    codice:
    strData = Trim(Request.Form("data"))
    aData = Split(strData,"/")
    data = dateSerial(aData(2),aData(1),aData(0))
    mese = Month(data)

  7. #7
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246
    La stringa di inserimento è questa:
    Set RSInsert = Server.CreateObject("ADODB.Recordset")
    sqlInsert = "INSERT INTO tbl_gare (categoria, data, luogo, pole_position, start, note, cartina, mese) Values ('"&fissa(categoria)&"','"&fissa(data)&"','"&fissa (luogo)&"','"&fissa(pole)&"','"&fissa(start)&"','" &fissa(note)&"','"&fissa(cartina)&"','"&fissa(mese )&"')"
    RSInsert.Open sqlInsert, DFCon, 3, 3
    Set RSInsert = Nothing

    La data è in formato gg/mm/aaaa, non faccio il controllo sintattico
    Ho provato a usare il codice da te postato ma niente mi continua a dare errore:
    Microsoft JET Database Engine error '80040e14'

    Syntax error in INSERT INTO statement.

    /adm/gestione_gare.asp, line 145

    e la riga 145 è --> RSInsert.Open sqlInsert, DFCon, 3, 3

    ma come mai?
    eli

  8. #8
    Utente di HTML.it L'avatar di willybit
    Registrato dal
    May 2001
    Messaggi
    4,367
    io ho trasformato la stringa che rappresenta la data in una variabile di tipo date per recuperare il mese... per inserire la data in sql però devi metterla nel formato #mm/gg/aaaa#
    prova così
    codice:
    Function Date2SQL(dataora)
      Date2SQL = "#" & Month(dataora) & "/" & Day(dataora) & "/" & Year(dataora) & "#"
    End Function
    
    strData = Trim(Request.Form("data"))
    aData = Split(strData,"/")
    data = dateSerial(aData(2),aData(1),aData(0))
    mese = Month(data)
    
    Set RSInsert = Server.CreateObject("ADODB.Recordset") 
    sqlInsert = "INSERT INTO tbl_gare (categoria, data, luogo, pole_position, start, note, cartina, mese) Values ('"&fissa(categoria)&"',"&Date2SQL(data)&",'"&fissa(luogo)&"','"&fissa(pole)&"','"&fissa(start)&"','"&fissa(note)&"','"&fissa(cartina)&"','"&fissa(mese)&"')" 
    RSInsert.Open sqlInsert, DFCon, 3, 3 
    Set RSInsert = Nothing

  9. #9
    Utente di HTML.it L'avatar di elisa21
    Registrato dal
    May 2004
    residenza
    Lucca
    Messaggi
    246
    niente da fare

    sempre stesso errore....

    eli

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.