Ir para conteúdo
Fórum Script Brasil
  • 0

Ano 2000 Inverte As Datas....


ViniciusJau

Pergunta

e ai pessoal.. seguinte... tenho um codigo em que o usuario digita a data para ser gravada no banco de dados...

mais está acontecendo o seguinte:

quando o ano é maior 2000 ele inverte a posição do dia com a do mês huh.gif

se eu tento salvar qualquer uma data menor que do ano 200 ele funciona...

deixa eu explicar melhor, eu tento gravar no banco essa data

31/12/2004

quando eu olho no meu banco a data está gravada assim:

2004/31/12

o correto era para ser 2004/12/31 ( uma vez que meu banco é em mysql)

será que o problema é o tipo de campo que estou usando ??? dry.gif

Link para o comentário
Compartilhar em outros sites

18 respostass a esta questão

Posts Recomendados

  • 0

Bicho, não ta gravando errado não, cabe a voce manipular isso ai, também uso mysql aqui e é assim que funciona aqui também, voce manipula ai.. ta valendo?

Pois se você pegar day(data) ele retorna o dia certinho, se você dar um month(data) ele retorna o mes certinho e assim por diante..

Manipule-os na hora de gravar e exibir..

Abraços!!

Link para o comentário
Compartilhar em outros sites

  • 0

o meu... é o mes com o dia..... virou uma ***** e dai o site não funciona... mais eu vi essa função uma mil vezes aqui no forum... e achava que ela servia pra um insert... mais agora que reparei que ela separa os dados de campos do tipo data.... então tenta usar ela que funciona ..

Link para o comentário
Compartilhar em outros sites

  • 0

Sim, o meu inverte sim, mas roda perfeitamente aqui.. não sei se essa inversão também está errada não, acho que é normal, mas ACHO pelo fato do campo ser DATE, acho que com o tipo TIMESTAMP talvez fique do jeito que você quer...

Se testar com o tipo TIMESTAMP, me de o resultado, ok?

Abraços cara..

Link para o comentário
Compartilhar em outros sites

  • 0

Sei não, hein..

O que eu costumo fazer é gravar no banco, com o tipo de campo texto.

Daí, eu faço os tratamentos que precisar, e sempre funcionou.

Link para o comentário
Compartilhar em outros sites

  • 0
Sei não, hein..

O que eu costumo fazer é gravar no banco, com o tipo de campo texto.

Daí, eu faço os tratamentos que precisar, e sempre funcionou.

mais no caso se eu precisar fazer uma consulta.... fica um pouco mais complicado não é ???

E quando você precisa fazer uma busca baseado em datas.

Tipo eventos q ocorrem um determinado periodo? fica utilizando funções q convertem string para data?

Link para o comentário
Compartilhar em outros sites

  • 0

ahan

isso ae

Converto dentro do sql

tongue.gif

Link para o comentário
Compartilhar em outros sites

  • 0

nossa.. mais eu ainda não consigo fazer isso.. hehe

ultima tentativa vai...

e seu fizer assim:

criar três campos no meu formulario dia, mês e ano..

dai eu faço assim:

<%

data = Year(data)&"-"&Month(data)&"-"&Day(data)

%>

jogo o nome deles será que ele salva no mesmo campo do banco corretamente ???

eu tentei fazer isso e escrevi um codigo assim:

<%

'pede os dados do formulário

Day = Request.Form("Day") ' linha do erro

Month = Request.Form("Month")

Year = Request.Form("Year")

%>

<%

data = Year(data)&"-"&Month(data)&"-"&Day(data)

%>

<% If (data = "") then

Response.write("Você deve digitar a data para continuar")

Else

  set rs = objConnection.execute("INSERT INTO teste (Data) Values('"&data&"')")

Response.redirect("enviado.htm")

End if

%>

<% call disconnect %>

e ele me retornou esse erro:

Microsoft VBScript runtime error '800a01f5'

Illegal assignment: 'Day'

/data/data_cod2.asp, line 6

Link para o comentário
Compartilhar em outros sites

  • 0

usa outro nome de campo e de variavel.

Estas 3 variaveis aí, são termos que não podem ser usados assim.

O erro daria se você criasse uma variavel com o nome de STRING.

Só muda o nome dos campos e variaveis, e teste

Link para o comentário
Compartilhar em outros sites

  • 0

hum.. eu consegui aqui...

dá um look

<%

Session.LCID = 1046

Dim data

'pede os dados do form

data = Request.Form("data")

data = Year(data) & "-" & Month(data) & "-" & Day(data)

%>

era isso que faltava......

um dia depois:

saca só: assim também funciona....:

<%

VData = split(Request.Form("Data"),"/")

data = VData(2) & "-" & VData(1) & "-" & VData(0)

%>

vocês conseguiram ai também ??

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...