Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380

    inserimento/gestione date db

    Ciao a tutti, dovrei inserire in un db mysql delle news dove ciascuna delle quali ha una sua data scritta nel formato es: Mar 12/12/2009,
    Le news dovranno comparire in ordine di data (desc o asc) e se non sono "scadute" Il mio problema è legato proprio a come codificare la data in fase di scrittura nel db e poterla poi gestire nei vari modi.
    Grazie

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    select str_to_date(substring('Mar 12/12/2009' from 5),"%d/%m/%Y")

  3. #3
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    grazie per la risposta
    scusa in questo modo non memorizzo solo la data in formato %d%m%Y?
    io devo anche rileggere la data così come è stata inserita in origine

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Se provi a eseguire la query che ti ho scritto vedrai che ti restituirà 2009-12-12, convertendo la stringa nel formato aaaa-mm-gg.

    Una volta memorizzata nel database, puoi riottenere la visualizzazione desiderata in questo modo

    set lc_time_names = 'it_IT';
    select *,date_format(campo_data,"%a %d/%m/%Y") as miadata from tabella

    Puoi tuttavia ottenere la formattazione desiderata anche col php. Guarda sul manuale le funzioni date() e strtotime().

  5. #5
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    Originariamente inviato da nicola75ss
    select str_to_date(substring('Mar 12/12/2009' from 5),"%d/%m/%Y")
    I tuoi due consigli sono molto chiari sul cosa fare ma mi trovo in dificcoltà con la tua query.
    Dovrei inserire la data nella seguente query, ma come posso implementare quella da te consigliata dal momento che non devo fare una select?
    str_to_date è una function di mysql quindi non saprei come fare una cosa del genere:
    Codice PHP:
    $data str_to_date(......); 
    Codice PHP:
    $query "INSERT INTO ".$tbl_prefix."news (nome, citta,data, note) VALUES ('$nome','$citta', '$data', '$note')"
    P.s.:si lo so che non sono proprio pratico
    Grazie per la disponibilità

  6. #6
    Utente di HTML.it L'avatar di homerbit
    Registrato dal
    Dec 2005
    residenza
    Roma
    Messaggi
    1,380
    Ok ho messo in piedi un pò di cose ed ho scelto una via mista mysq+php per la formattazione della data.
    Ora però utilizzando la funzione
    Codice PHP:
    strftime("%a %d/%m/%Y"strtotime($row['data_news'])) 
    mi sono accorto che non mi restituisce l'upper del giorno della settimana troncato, come posso rimediare? a parte l'operazione sulla stringa che vorrei evitare? :master:
    grazie

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.