Para cada campo de uma tabela em um banco de dados MySQL você deve definir um tipo de campo correspondente aos dados que serão inseridos nesse campo. Lhe recomendo a leitura deste artigo: Escolhendo um Tipo de Campo Correto, MySQL e deste: MySQL – Data Types.
Para gravarmos datas em um campo, por exemplo, podemos usar DATE (YYYY-MM-DD), DATETIME (YYYY-MM-DD HH:MM:SS) ou TIMESTAMP (YYYYMMDDHHMMSS). Mas, na hora de exibirmos estes dados no site, nem sempre queremos exibí-los da mesma forma como foram gravados. Principalmente se tratando de datas, pois elas são gravadas no padrão americano: ano-mês-dia, e para nós brasileiros que estamos acostumados com o nosso padrão: dia/mês/ano pode ficar bem confuso e desconfortável.
Vou mostrar-lhe duas formas de exibir as datas no formato brasileiro, ou seja, dia/mês/ano.
Através de instruções SQL
Você irá criar sua instrução SQL assim:
SELECT *,date_format(nome_do_campo, '%d/%m/%Y') AS data FROM nome_da_tabela
E para exibir, usaremos:
$row['data']
Através do PHP com a função strtotime
echo date('d/m/Y', strtotime($row['nome_do_campo']));
Portanto, basta você escolher a que lhe for mais conveniente.