Visualizzazione dei risultati da 1 a 3 su 3

Discussione: data

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253

    data

    Ciao ragazzi!
    Spero mi possiate aiutare...ho un problema con le date..nel senso che non riesco a configurare la data come gg/mm/aaaa ma mostra la versione americana ossia il contrario...come posso fare?
    Anche nel db si inserisce quel formato di data con il comando
    data_inserimento= now().
    Vi ringrazio per le risposte!

    Elisa

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Premessa. Ciò che metti nel db conta fino ad un certo punto
    A video la data viene inserita in base alle impostazioni internazionali.
    Mettendo session.LCID = 1040 all'inizio dello script forzi il server ad inviarla nel nostro formato.
    Al di là di queste premesse, il modo migliore di gestire le date sia in un'ottica di compatibilità tra db diversi sia per la facilità di poter poi fare operazioni con le date stesse, è quello di inserire la data nel formato ISO nel db, ovvero:

    yyyy-mm-dd ooppure yyyy/mm/dd

    La stampa a video poi risulterà sempre corretta tramite:

    codice:
    response.write(CDate(rs("data")))
    Roby

  3. #3
    Di default qualsiasi database access memorizza la data all'inglese, per questo succedono casini immani quando cerchi di recuperare da codice asp utilizzando le funzioni della data, soprattutto se (come fai tu) la data è inserita all'italiana.

    Perchè finchè metti il 14/08/2005 è chiaro che può essere solo che il 14 agosto...ma quando andrai ad inserire il 03/04/2005 sarà il 4 marzo o il 3 aprile?

    Pertanto intanto ti consiglio di inserire le date nel formato in cui il db se le aspetta (quindi all'inglese).

    Cambia il formato della data ed impostalo nel formato tipo AAAA/MM/GG.

    E' un modo decisamente più sicuro, certo darà qualche noia in più in inserimento, ma vedrai che sarai soddisfatto una volta che devi gestire i dati.

    Questa è un esempio di funzione che trasforma al momento dell'inserimento nel db, la data nel formato AAAA/MM/GG:
    codice:
    Function dataShort(dtData) 
    dataShort = year(dtData&"/"&right("00"&month(dtData),2)&"/"&right("00"&day(dtData),2)) 
    end Function
    . Inoltre la funzione richiede un valore data... devi prima fare la trasformazione,
    codice:
    data2 = dataShort(CDate(data2))
    Scusa moderatore... abbiamo postato simultaneamente....

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.