Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    date_diff con ore, minuti e secondi

    Salve ragazzi è possibile in mysql fare la differenza tra 2 date mostrando non solo il giorno ma anche le ore,minuti e secondi. Le colonne della tabella sono di tipo date.
    Roberto Dungino

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2005
    Messaggi
    267
    su www.php.net trovi le funzioni che ti servono.

    io in modo rozzo farei la differenza e poi calcolerei tutto m sono certo che esiste una funzione adatta.

  3. #3
    Non parlo di php ma di mysql! Si puo far uscire da date_diff anche i minuti ed i secondi?

    saluti
    Roberto Dungino

  4. #4

    Re: date_diff con ore, minuti e secondi

    Originariamente inviato da dungino
    Salve ragazzi è possibile in mysql fare la differenza tra 2 date mostrando non solo il giorno ma anche le ore,minuti e secondi. Le colonne della tabella sono di tipo date.
    se sono di tipo DATE dove dovrebbe prendere ore:minuti:secondi ????

    prova a cercare qui.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    ho trovato credo che la funzione che serve a me è time_diff();
    Siccome quello che ritorna a me è ore:minuti:secondi. Per trovare i giorni verifico che le ore siano maggiori di 24 e divido per 24 il resto della divisione è il numero di ore.
    Adesso la mia domanda èla seguente come faccio a recuperare solo la parte intera di un numero ? E per quanto riguarda il modulo ?
    Roberto Dungino

  6. #6
    credo che potresti essere piu' chiaro e sopratutto dire in che "FORMATO" hai la data sul db, DATE o DATETIME???

    esistono svariate funzioni: per esempio DATE_FORMAT() per estrarre un qualsiasi valore da una data, fino ad usare un explode() del php, passando per left(), right(), substr() di mysql.

    ognuna ha una sua ottimizzazione. Bisogna conoscere i dati che hai disponibili e cosa vuoi ottenere, altrimenti a domanda segue domanda e poi segue domanda ancora.



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    il mio formato è date, però mi sono accorto di una cosa è che quando voglio estrarre anche ora:min:sec mi ritorna 00:00:00. La mia idea era quella di fare un time_diff() che mi ritorna il numero delle ore:min:sec. Poi divido per 24 per trovare il numero di giorni, con il resto della divisione trovo le ore restanti. Adesso la mia domanda è: quale funzione di php consente di avere solo la parte intera di una divisione e per quanto riguarda il modulo?
    Grazie.
    Roberto Dungino

  8. #8
    Originariamente inviato da dungino
    il mio formato è date, però mi sono accorto di una cosa è che quando voglio estrarre anche ora:min:sec mi ritorna 00:00:00. La mia idea era quella di fare un time_diff() che mi ritorna il numero delle ore:min:sec. Poi divido per 24 per trovare il numero di giorni, con il resto della divisione trovo le ore restanti. Adesso la mia domanda è: quale funzione di php consente di avere solo la parte intera di una divisione e per quanto riguarda il modulo?
    Grazie.
    per gestire i dati delle ore per prima cosa i dati li devi avere.

    Senza questa valorizzazione tutto il resto e' ciccia....

    quindi usa un campo in formato DATETIME e che sia yyyy-mm-dd hh:mm:ss dopo di che potrai fare (facilmente) tutto quello che ti pare. Stai andando a complicare delle cose che di per se sono semplici da fare.

    timediff rende la differenza in ore, datediff i giorni. Potresti anche usare due campi:

    uno DATA e uno ORE. .....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  9. #9
    per avere la parte intera di un numero come si fà in php?
    Esempio 2,589->per avere 2 come si fà ???
    Altro esempio per fare 85 mod 24 come si fà in php ?
    Roberto Dungino

  10. #10
    Originariamente inviato da dungino
    per avere la parte intera di un numero come si fà in php?
    Esempio 2,589->per avere 2 come si fà ???
    Altro esempio per fare 85 mod 24 come si fà in php ?
    Codice PHP:
    $dec 2.589;

    $int1 round($dec);  
    $int2 floor($dec);
    $int3 ceil($dec);

    $resto 85 24;

    echo 
    "$int1$int2$int3$resto"
    si spiegano da soli. Vedi tu. E ricordati che i numerici vogliono il punto come divisore dei decimali.....

    up to you....

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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