Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 40
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    63

    Visualizzare data attuale da database tramite ASP

    Ciao a tutti,

    ho una domanda che per chi se ne intende sicuramente è facile darmi una risposta.

    Ho un database Access con inseriti degl'eventi che terrà la mia azienda. Questi eventi hanno una data ovviamente e nel database li ho inseriti tutti, quindi ci sono eventi già passati e eventi che dovranno esserci.

    Quello di qui ho bisogno è il codice che assieme a SELECT dica al server di restituirmi dal DB solo le date ancora valide, così nella mia pagina visualizzero l'ultima data dell'evento che si terrà e non l'ultima inserita o la pirma (cosa che ottengo se metto ASC o DESC semplicemente).

    Grazie mille dell'aiuto...

    Ciao
    olly
    Olly

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Che tipo di campo hai usato per inserire la data?
    Come è fisicamente scritta la data nel db?

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    63
    Ciao Roby,

    grazie dell'interesse...allora il codice che uso è quello usuale:

    sql = "SELECT * FROM tbEventi ORDER BY tbEventi.IDEventi DESC"

    ma così appunto mi visualizza tutti gl'enventi, anche quelli passati, in ordine per ID. Invece a me servirebbe che me li ordina per data e NON include le date già passate.

    La tabella DB è così composta:

    IDEventi - Data - Titolo - Testo - Link

    dove il campo "Data" è di testo normale e in questo formato dd/mm/yyyy

    Grazie mille dell'aiuto....

    Olly
    Olly

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Il confronto testuale su un campo "testo" nel formato dd/mm/yyyy potrebbe non essere in grado di restituirti le date in ordine cronologico né effettuare un controllo sulla data odierna.

    Dovresti trasformare le date nel formato yyyy-mm-dd.

    Roby

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    63
    Quello non credo che sia un problema...basta che modifico il cambo nel DB da "testo" a "data" giusto ;-)

    Il più è cosa uso nella pagina ASP per ottenere quello che voglio???

    Mi puoi aiutare??
    Olly

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    No, devi invertire, anche tramite una procedura ASP, il contenuto di ogni campo!
    Non devi cambiare il TIPO di campo: un campo testo 10 caratteri va bene per ottenere yyyy-mm-dd

    Roby

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    63
    ok allora lo farò...ma una volta fatto cosa devo mettere nella pagina ASP per dirgli di prendere solo le date valide e ordinarle da quella più attuale a quella più in là nel futuro??
    Olly

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    <%
    oggi = year(date()) &"-"& right("0"& month(date()),2) &"-"& right("0"& day(date()),2)
    
    sql = "SELECT * FROM tbEventi WHERE tbEventi.data >= '"& oggi &"' ORDER BY tbEventi.data ASC"
    %>
    Roby

  9. #9
    Utente di HTML.it
    Registrato dal
    May 2001
    Messaggi
    63
    Fatto Roby...ho messo le date nel DB come hai indicato tu (es. 25-02-2010) ma mi visualizza ugualmente le date già passate, questo è tutto il codice che ho nella pagina ASP (è fatta per restituire poi i dati in un filmato Flash...):
    <%
    Set Conn=Server.CreateObject("ADODB.Connection")
    strConn="driver={Microsoft Access Driver (*.mdb)}; "
    strConn=strConn & " DBQ=" & Server.MapPath("db/news.mdb")
    Conn.Open strConn
    oggi = year(date()) &"-"& right("0"& month(date()),2) &"-"& right("0"& day(date()),2)
    sql = "SELECT * FROM tbEventi WHERE tbEventi.data >= '"& oggi &"' ORDER BY tbEventi.data ASC"
    Set rs = Server.CreateObject("ADODB.Recordset")
    Set rs.ActiveConnection = conn

    rs.Source = "tbEventi"
    rs.Open sql, conn

    x = 0
    Do until(x=1)
    x = x + 1
    Response.Write("&dataE"&x&"="&rs("Data")&"&titoloE "&x&"="&rs("Titolo")&"&testoE"&x&"="&rs("Testo")&" &linkE"&x&"="&rs("Link"))
    rs.MoveNext
    If x<5 then Response.Write("&")
    Loop

    rs.Close
    set rs = Nothing
    conn.Close
    set conn = Nothing
    %>

    Grazie mille e scusa il disturbo ;-)

    Olly
    Olly

  10. #10
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Io ho detto un'altra cosa yyyy-mm-dd quindi 2010-02-25!

    Roby

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.