Ir para conteúdo

POWERED BY:

Arquivado

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

roger_php

[Resolvido] Gravar data no formato dd/mm/YYYY no MySQL

Recommended Posts

Sei que no MySQL ele vem com o padrão YYYY/mm/dd...mas como gravo no MySQL no formato brasileiro: dd/mm/YYYY?

Compartilhar este post


Link para o post
Compartilhar em outros sites

para que voce precisa gravar nesse formato... grave no padrão date do SQL ou utilize Varchar, oque não acho boa idéia...Grave YYYY/mm/dd e use no comando select o date_format() para formatar a data....Para gravar utilize no php e inverta a data e grave se for o caso ok...$data = implode("-", array_reverse(explode("-", $data)))flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

O meu problema é o seguinte:

 

<?php

 

 

function anti_injection($sql)

{

// remove palavras que contenham sintaxe sql

$sql = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"),"",$sql);

$sql = trim($sql);//limpa espaços vazio

$sql = strip_tags($sql);//tira tags html e php

$sql = addslashes($sql);//Adiciona barras invertidas a uma string

return $sql;

}

 

 

include "valida_cookies.inc.php";

 

 

$sessao = $_POST ["sessao"];

$descricao = anti_injection($_POST["descricao"]);

 

 

$data_post = Date('Y/m/d');

$data_expira = strftime("%Y/%m/%d", strtotime("+10 days"));

//AQUI QUE EU TENHO QUE INVERTER POIS TENHO DE EXIBIR PARA O USUÁRIO

 

//ELE VAI EXIBIR YYYY/mm/dd COMO FAÇO PARA CONVERTER ISSO EM dd/mm/YYYY?

 

 

 

 

if (empty($sessao))

{

echo "<center>";

echo "<br><br><font face='Verdana' size='2' color='#000000'><b> Por favor escolher uma sessáo. </b></font><br><br>";

echo "<a href='java script:history.back();'> Voltar </a></center>";

exit;

}

 

 

if (empty($descricao))

{

echo "<center>";

echo "<br><br><font face='Verdana' size='2' color='#000000'><b> Por favor descreva seu anúncio. </b></font><br><br>";

echo "<a href='java script:history.back();'> Voltar </a>";

echo "</center>";

exit;

}

 

 

 

include "conecta_mysql.inc.php";

 

 

$banco="INSERT INTO classificados (codigo_usuario, sessao, descricao, data_post, data_expira) VALUES ('$codigo','$sessao','$descricao','$data_post','$data_expira')";

 

mysql_query($banco) or die ("Não foi possivel gravar seus dados.");

 

 

if ($erro==0)

{

echo "<font face='Verdana' size='2' color='#000000'><center>";

echo "<b> Anúncio cadastrado com sucesso.<br> Data de expiração:  " . $data_expira . "<br><br> <a href='java script:history.back();' target='meio2'>Voltar</a>";

}

 

mysql_close($conexao);

 

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cria uma outra variavel que vai exibir pro usuário no formato correto

 

 

$data_post = Date('Y/m/d');$data_expira = strftime("%Y/%m/%d", strtotime("+10 days"));$data_expira_user = strftime("%d/%m/%Y", strtotime("+10 days"));

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo pode me dar uma ajuda quanto a uma dúvida que tenho aqui?

Lendo este post, estou tentando resolver um "probleminha" que tenho (como todo iniciante, rsrsrs).

No meu formulário XHTML, o usuário entra com a data xx/xx/xxxx no campo Data (name="data"), daí pego ela com:

$data = $_POST['data'];
Quando faço o INSERT e vou ao phpMyAdmin checar o que gravou, o campo data está 0000-00-00

Tentei usar a linha que você postou

$data = implode("-", array_reverse(explode("-", $data)));
Mas não resolveu, ou estou fazendo errado né, é correto colocar esta linha depois da linha que pega os dados do formulário?

para que voce precisa gravar nesse formato... grave no padrão date do SQL ou utilize Varchar, oque não acho boa idéia...

 

Grave YYYY/mm/dd e use no comando select o date_format() para formatar a data....

 

Para gravar utilize no php e inverta a data e grave se for o caso ok...

 

$data = implode("-", array_reverse(explode("-", $data)))

 

flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

@fabioagora

 

Preste atenção nas datas dos posts.

Este tópico é de 2007.

 

Não que você não possa criar um post em tópicos antigos. Mas geralmente é mais difícil conseguir respostas em tópicos velhos.

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

matias_rezende

Deu certo, era isso mesmo, pura falta de atenção (e entendimento também).

Obrigado!

 

Beraldo

Desculpe ressucitar estes tópicos das antigas, mas é que geralmente nos foruns preferem isso a encher de tópicos que já foram tratados criando duplicidades. E percebi que ele tambem não estava trancado...

Qual a forma e que todos estão mais acostumados a fazer por aqui?

Ah, e obrigado pelo toque.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

olá, @fabioagora.

 

Não sei em que tipos de fóruns tens andado, mas poucos preferem ressucitar "arquivos velhos".

 

Sem dúvida q não é bom à organização pouco se obtém de resposta ao questionar algo já solucionado...

Ainda mais se tratando de um fórum de tecnologia em que até mesmo 1 mês pode resultar em novas (e mais práticas) soluções.

Caso soluções antigas não atenda aos seus anseios, por favor, crie novos tópicos e alguem lhe será util ao lhe trazer o que desejas.

 

Abraço, sucesso...

Compartilhar este post


Link para o post
Compartilhar em outros sites

OBS: nao vejo o porque nao postar em topicos mais antigos .. sei la.. eu nunca olho a data do topico.. e como o fabio falou de um ponto de vista tecnico a intenção é boa evita redundancia(duplicidades).

 

valww =]

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.