Zapisywanie oraz odczytywanie daty i czasu [PHP/MySQL]
Już niejeden raz zdarzyło mi się pomagać pisać aplikacje internetowe ludziom, którzy mieli do czynienia z tym tematem po raz pierwszy, najwyżej drugi. Dlatego też od dzisiaj postaram się raz na jakiś czas raczyć Was wpisami z poradami na tematy, które często trapią początkujących. Dzisiaj króciutki tutorial jak zapisywać date oraz czas do mysql-a oraz jak te dane później wyświetlić.
Załóżmy, że mamy tabelę w bazie danych, która się składa jedynie z jednej kolumny - data. Jest to kolumna typu datetime. Dodanie aktualnej daty oraz czasu jest banalnie proste. Wystarczy skorzystać z wbudowanej w MySQL funkcji NOW().
<?php $query = "INSERT INTO tabela_data(data) VALUES(NOW())"; mysql_query($query); ?>
Tym samym do tabeli zostaną zapisane dane w postaci yyyy-mm-dd hh:mm:ss.
Jak odczytać ?
Teraz wystarczy skorzystać z funkcji explode, która oddzieli nam datę od czasu.
<?php $querry = "SELECT data FROM tabela_data"; $result = mysql_query($querry); while($tab = mysql_fetch_array($result)) { $data = $tab['data']; $data = explode(' ', $data); $date = $data[0]; //data w formacie yyyy:mm:dd $time = $data[1]; //czas w formacie hh:mm:ss } ?>
Jeśli komuś nie odpowiada data w takim formacie to można to zmienić. Z pomocą przychodzi nam bowiem funkcje date i strtotime:
<?php $date = date("d-m-Y", strtotime($date)); ?>












