Visualizzazione dei risultati da 1 a 6 su 6

Discussione: campo date

  1. #1

    campo date

    Ciao ragazzi, ho inserito in una tabella il capo date, che prende valori in questo formato 0000-00-00. inserisco i dati da un form e al momento di inserire la data ovviamente se non è in questo formato non la registra. Tre domande:

    a) che controlli posso fare per far si che venga inserita correttamente in questo modo?
    b) come faccio al momento dell'estarazione dei record a visualizzare prima GG-MM-AAAA
    anziche AAAA-MM-GG?
    c) ci son altre soluzioni migliori?

    Grazie ciao Simone
    5ym0

  2. #2
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    devi fare un controllo...io farei....
    - spezza la tringa al segno -
    - verifica se ogni parte soddisfa la condizioni
    - parteA: 4 caratteri numerici > dataA e < dataB
    - parteB: 2 caratteri numerici < 12
    - parteC: 2 caratteri < 31 (oppure per controllo professionale puoi fare una verifica in base al mese)

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  3. #3
    mmmm un metodo più veloce o più semplice?
    5ym0

  4. #4
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    if(!ereg("^[0-9]{4}-[0-9]{2}-[0-9]{2}$", $data)) //errore
    ma ciò non toglie che io possa scrivere 0000-59-87 e sarebbe una data valida e verrebbe salvata nel db

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  5. #5
    Dico la mia,
    per l'inserimento potresti usare
    1.
    - javascript cioè clicchi icona calendario e inserisci la data così sei sicuro che verrà inserita nel formato giusto (un po' come avviene nelle prenotazioni degli hotel) e controlli solo se il campo è vuoto altrimenti memorizzi, cerca in javascript ts_picker.js.
    - oppure inserisci data a mano tipo gg-mm-aaaa e fai una cosa tipo
    list($giorno,$mese,$anno)=explode("-", $data);

    if (!checkdate($mese,$giorno,$anno)) { echo"data non valida"; } else { echo"ok";
    # inserisci data nel database
    $data_x_database=str_replace(" ","","$anno-$mese-$giorno");
    # ricorda di creare il campo per la data come date e non varchar quetso perchè il database accetta il formato aaaa-mm-gg}
    leggi qui per maggiori informazioni
    http://forum.html.it/forum/showthrea...hreadid=459634

    2.
    # ti estrai la data e la trasformi in formato italiano gg-mm-aaaa
    $it_data=date('d-m-Y',strtotime($array['campo_data']));
    echo"$it_data";



  6. #6
    ok grazie a tutti! vedro quale soluzione mi conviene! ciao!
    5ym0

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.