Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

MarKteus

O Php está gravando a data errada no Banco, pq ?

Recommended Posts

Estou utilizando a função date() para pegar a data atual, consigo porém no Banco está sendo gravado assim:

 

2012-1-09 00:00:00

 

Alguém sabe o pq daquele 20 na frente e da hora estar zerada ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente utilizar a função date() do php e comprar tb...


date('Y-m-d')

e a função do sql:

 

select now()

por ultimo tente ver seu relógio, pois essa função pega a data atual do servidor (no caso seu pc)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, esse é o formato padrão de datas no PHP e MYSQL. Pra gravar no banco, você tem que gravar nesse formato(se o campo no mysql for no formato DATE). Quando você for pegar a data de volta do banco, basta você formatar. Veja:

 

Cara, esse é o formato padrão de datas no PHP e MYSQL. Pra gravar no banco, você tem que gravar nesse formato(se o campo no mysql for no formato DATE). Quando você for pegar a data de volta do banco, basta você formatar. Veja:

 

<?php

//$data = $row['data']
//Considerando que o valor acima veio do banco.

  $partes = explode(' ', $data);
  $data1 = $partes[1];

  $data_parts = explode('-', $data1);
  $data_final = implode('/', array_reverse($data_parts));

echo $data_final;

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Use campo datetime e na hora de inserir:

 

INSERT INTO tabela (data) VALUES(NOW())

Na hora de selecionar:

SELECT campo1,campo2,date_format(data, '%e/%m/%y às %h:%m')as data FROM tabela

onde:

  • %e -> Dia
  • %m -> Mês
  • %y -> Ano
  • %h -> Hora
  • %m -> Minuto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Copia e cola o erro aqui, e o código também

 

 

Fatal error: Call to undefined function now() in C:\wamp\www\mamForum\mostraTopico.php on line 74

 

$strInsereTop = "INSERT INTO cadTopico (codUsuario, strTitulo, codassunto, strDescricao, dataCadastro) VALUES ('".$_SESSION['codUsu']."','$strtitulo','$codigoAssunto','$strdescricao','".date('d-m-y')."')";

Compartilhar este post


Link para o post
Compartilhar em outros sites
$strInsereTop  = "INSERT INTO cadTopico (codUsuario, strTitulo, codassunto, strDescricao, dataCadastro) VALUES ('".$_SESSION['codUsu']."','$strtitulo','$codigoAssunto','$strdescricao',NOW())";

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente utilizar a função date() do php e comprar tb...


date('Y-m-d')

e a função do sql:

 

select now()

por ultimo tente ver seu relógio, pois essa função pega a data atual do servidor (no caso seu pc)

 

 

Como deve ficar as configurações regionais do meu sistema pois a função date() da certo mais acrescenta aqueles dois numeros q comentei, troquei nas configurações regionais mas ñ deu certo, será q tem q reiniciar o MySQL ou o Windows ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

$strInsereTop  = "INSERT INTO cadTopico (codUsuario, strTitulo, codassunto, strDescricao, dataCadastro) VALUES ('".$_SESSION['codUsu']."','$strtitulo','$codigoAssunto','$strdescricao',NOW())";

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Gravou certinho mais ainda está invertido e com 4 digitos no ano (2009-10-14)

e o relógio tbm ainda ñ está batendo tipo fiz o teste as 00:03 mas gravou 00:02:42

 

Estou testando tudo em Localhost

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo, eu aconselho você a salvar assim no banco. Depois na hora da query tu organiza do melhor jeito:

 

SELECT campo1,campo2,date_format(data, '%e/%m/%y às %h:%m')as data FROM tabela

Sobre a hora errada, talvez deva ser o timezone do MySQL. Não sei ao certo.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.