Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125

    Calcolare differenza tra data ed orario

    Vorrei calcolare con ASP la differenza di data e di orario tra Milano e l'America centrale (-6 ore)ed ho scritto così:
    codice:
    <% 
    
    sessionLCID = 1040 
    
    dataMilano = date()
    oraMilano = time()
    
    dataAmericaCentrale = DateAdd("h",-6,oraRoma)
    
    response.write dataMilano&" - "&oraMilano&"
    "
    response.write dataAmericaCentrale&"
    "
    
    %>
    Per l'orario va bene, ma per la data? Cioè se in America centrale sono le 23 della sera ed a Milano le 5 del mattino lo script dovrebbe restituirmi:
    codice:
    A Milano sono: 02/10/2005 Ore 05:00
    In America centrale sono: 01/10/2005 Ore 23:00

  2. #2
    prova così:
    codice:
    dataMilano = Now()
    
    dataAmericaCentrale = DateAdd("h", -6, dataMilano)
    response.write dataMilano & "
    "
    response.write dataAmericaCentrale

  3. #3
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    OK grazie ma se volessi questo:
    codice:
    Sab 01 Ott 2005 22.14.58
    invece di:
    codice:
    01/10/2005 22.14.58
    Come devo modificare il codice?

  4. #4
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Una cosa è il valore dela data, altro è il formato di visualizzazione. Per ottenere ciò che vuoi, devi utilizzare funzioni tipo WeekDayName, MonthName, ecc...

    Qui puoi trovare l'elenco di tutte le funzioni che possono esserti utile. Nota che i nomi di mesi e giorni possono essere visualizzati in inglese.

  5. #5
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    non ho capito cosa devo fare... se ho già una data nel formato
    codice:
    01/10/2005 22.14.58
    come la trasformo in
    codice:
    Sab 01 Ott 2005 22.14.58
    Il codice è questo:
    codice:
    <%
    session.lcid=1040
    
    dataMilano = Now()
    response.write dataMilano & "
    "
    
    dataAmericaCentrale = DateAdd("h", -7, DataMilano)
    response.write dataAmericaCentrale & "
    "
    
    %>

  6. #6
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    codice:
    Function FormattaDataComePiaceAMe(ByVal DatData)
      Dim strData
      strData = ""
      ' nome giorno
      strData = strData & WeekdayName(Weekday(DatData),true)
      ' numero giorno
      strData = strData & " " & Right("0" & Day(datData), 2)
      ' nome mese
      strData = strData & " " & MonthName(Month(datData),true)
      ' anno
      strData = strData & " " & Year(datData)
      ' ore e minuti
      strData = strData & " " & FormatDateTime(datData, 4)
      ' secondi
      strData = strData & " " & Second(datData)
      ' prepara la stringa finale
      FormattaDataComePiaceAMe = strData
    End Function
    L'ho scritta senza provarla...

  7. #7
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125

    codice:
    Function FormattaDataComePiaceAMe(ByVal DatData)
      Dim strData
      strData = ""
      ' nome giorno
      strData = strData & WeekdayName(Weekday(DatData),true)
      ' numero giorno
      strData = strData & " " & Right("0" & Day(datData), 2)
      ' nome mese
      strData = strData & " " & MonthName(Month(datData),true)
      ' anno
      strData = strData & " " & Year(datData)
      ' ore e minuti
      strData = strData & " " & FormatDateTime(datData, 4)
      ' secondi
      strData = strData & " " & Second(datData)
      ' prepara la stringa finale
      FormattaDataComePiaceAMe = strData
    End Function
    
    dataOggi = FormattaDataComePiaceAMe(Now())
    response.write dataOggi & "
    "
    
    dataAmericaCentrale = DateAdd("h", -7, DataOggi)
    response.write dataAmericaCentrale & "
    "
    Restituisce:
    sab 01 ott 2005 23.22 48
    Microsoft VBScript runtime error '800a000d'

    Type mismatch: '[string: "sab 01 ott 2005 23.2"]'

    /default.asp, line 26

  8. #8
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Per forza, la mia funzione traduce una data in una stringa e per questo motivo non puoi dare il suo risultato in pasto ad una funzione che operi con le date.

    Devi usare la funzione solamente quando vuoi visualizzare la data.

    codice:
    dataOggi = Now()
    response.write FormattaDataComePiaceAMe(dataOggi) & "
    "
    
    dataAmericaCentrale = DateAdd("h", -7, DataOggi)
    response.write FormattaDataComePiaceAMe(dataAmericaCentrale) & "
    "

  9. #9
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    Grazie, gentilissimo... adesso ho capito...

    Una "pignoleria": perchè tra i minuti ed i secondi non ci sono i due ounti che separano anche le ore dai minuti?:
    codice:
    Sab 01 Ott 2005 16:49 18

  10. #10
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Originariamente inviato da Mizushi
    Grazie, gentilissimo... adesso ho capito...

    Una "pignoleria": perchè tra i minuti ed i secondi non ci sono i due ounti che separano anche le ore dai minuti?:
    codice:
    Sab 01 Ott 2005 16:49 18
    Perchè me li sono dimenticati (evidenziati in rosso)
    codice:
    Function FormattaDataComePiaceAMe(ByVal DatData)
      Dim strData
      strData = ""
      ' nome giorno
      strData = strData & WeekdayName(Weekday(DatData),true)
      ' numero giorno
      strData = strData & " " & Right("0" & Day(datData), 2)
      ' nome mese
      strData = strData & " " & MonthName(Month(datData),true)
      ' anno
      strData = strData & " " & Year(datData)
      ' ore e minuti
      strData = strData & " " & FormatDateTime(datData, 4)
      ' secondi
      strData = strData & ":" & Second(datData)
      ' prepara la stringa finale
      FormattaDataComePiaceAMe = strData
    End Function

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.