Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461

    ricavare intervallo temporale tra due date

    Ciao a tutti!

    ho un form di ricerca dove do la possibilità di immettere una data come "partenza" e una come "ritorno" in formato dd/mm/aaaa e devo andare nel mio db mySql e dirgli di cercare nella tabella CALENDARIO se anche solo uno dei giorni compresi tra queste due date è presente...il problema è che non saprei come "ricavare" l'intervallo temporale tra le due date quindi non so come estrarre le singole date tra i due estremi..
    una volta che ho l'insieme di date dal - al posso fare un ciclo di controllo nella tabella CALENDARIO dove verifico la èresenza ho meno di anche una sola delle date che ho ricavato...

    spero di essere stato chiaro..

    grazie

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ti consiglio di inserire la data nel formato yyyy-dd-mm
    Detto questo la data che verifichi deve essere maggiore di quella di partenza e minore di quella di ritorno.
    Poi non so se ti occorrono anche gli estremi.

    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    ok pero ora ho un altro problema....nel mio form di ricerca le date sono in due input text e come value la data è nel formato gg/mm/aaaa...io devo fare in modo che quando gli dico alla query di verificare la presenza di date maggiori o minori devo convertire la mia data nel formato aaaa-mm-gg...come posso fare?

    ho provato il cdate ma non funzona

  4. #4
    Originariamente inviato da stewe19
    ok pero ora ho un altro problema....nel mio form di ricerca le date sono in due input text e come value la data è nel formato gg/mm/aaaa...io devo fare in modo che quando gli dico alla query di verificare la presenza di date maggiori o minori devo convertire la mia data nel formato aaaa-mm-gg...come posso fare?

    ho provato il cdate ma non funzona
    Prima di tutto ti consiglio di verificare sempre quello che un utente ti inserisce in una casella di testo (per ovvi motivi di security --> SQL injection x esempio...).
    Detto questo e ammesso che tu abbia verificato e controllato l'input ti suggerisco una comoda funzione di MySql:

    DATE_FORMAT

    Facci sapere!
    Ciao

    ***************************
    Non può piovere per sempre...
    ***************************

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2007
    Messaggi
    461
    Grazie ma dopo tentativi e prove sono riuscito a creare questo processo per convertire le date:

    i=request("data_inizio")
    f=request("data_fine")

    if len(Month(i))<>2 then
    zmi = "0"
    else
    zmi = ""
    end if

    if len(day(i))<>2 then
    zgi = "0"
    else
    zgi = ""
    end if

    if len(Month(f))<>2 then
    zmf = "0"
    else
    zmf = ""
    end if

    if len(day(f))<>2 then
    zgf = "0"
    else
    zgf = ""
    end if


    i=(Year(i)&"-"&zmi&Month(i)&"-"&zgi&day(i))
    f=(Year(f)&"-"&zmf&Month(f)&"-"&zgf&day(f))

    GRazie ancora!

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 © 2026 vBulletin Solutions, Inc. All rights reserved.