Ir para conteúdo

POWERED BY:

Arquivado

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

VINICIUS RAMOS

validação de data

Recommended Posts

Estou tentando fazer validação de data em meu código ASP e não consigo. Tentei usar a função isdate() mas parece que o ASP não aceita.

Segue abaixo o código (a dúvida está em negrito)

 

<%

dim conexao

dim consulta

 

dim cod_inc

dim descricao

dim data

dim vhd80

dim vhd120

dim vmonitorlg

dim vmonitorsan

dim vmemoria

dim vimpressorahp

dim vimpresdsoraepson

dim cartucho

dim estabilizador

dim placa

dim processador

 

Set conexao = Server.CreateObject("ADODB.Connection")

Set consulta = Server.CreateObject("ADODB.Recordset")

 

conexao.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Inetpub\wwwroot\Projeto_Final_II\gerinc2.mdb"

 

codigo = request.Form ("codincidente")

descricao = request.Form ("descricao")

data = request.Form ("data")

vhd80 = request.Form ("hd80gb")

vhd120 = request.Form ("hd120gb")

vmonitorlg = request.Form ("monitorlg17")

vmonitorsan = request.Form ("monitorsamsung17")

vmemoria = request.Form ("memoria256mb")

vimpressorahp = request.Form ("impressoahp")

vimpresdsoraepson = request.Form ("impressoaepson")

vcartucho = request.Form ("cartuchoimpressorahp")

vestabilizador = request.Form ("estabilizador")

vplaca = request.Form ("placamaeintel")

vprocessador = request.Form ("processadorintel")

if codigo = "" then

response.write"Código Em Branco!!!! Volte e insira os dados corretamente!!!!"

 

else

if descricao = "" then

response.Write"Descrição Em Branco!!!! Volte e insira os dados corretamente!!!!"

 

else

if data = "" then

response.Write"Data Em Branco!!!! Volte e insira os dados corretamente!!!!"

 

else

if not isdate(data) then

response.Write"Data inválida"

 

 

else

if vhd80 = "" and vhd120 = "" and vmonitorlg = "" and vmonitorsan = "" and vmemoria = "" and vimpressorahp = "" and vimpresdsoraepson = "" and vcartucho = "" and vestabilizador = "" and vplaca = "" and vprocessador = "" then

response.Write"Você esqueceu de escolher e/ou digitar a quantidade do(s) equipamento(s) ligados ao incidente!!!"

else

consulta.Open "select * from incidente where codinc='" & request.Form ("codincidente") & "'", conexao

 

if consulta.EOF then

conexao.Execute "INSERT INTO incidente(codinc,descricao,data,hd80gb,HD_120B,Monitor_LG_17,Monitor_Sansung_17,

Memoria_256MB,Impressora_HP,Impressora_Epson,Cartucho_Impressora_HP,Estabilizado

r,Placa_Mae_Intel,Processador_Intel) VALUES ('"&codigo&"','"&descricao&"','"&data&"','"&vhd80&"','"&vhd120&"','"&vmonitorlg&"','"&vmonitorsan&"','"&vmemoria&"','"&vimpressorahp&"','"&vimpresdsoraepson&"','"&cartucho&"','"&estabilizador&"','"&placa&"', '"&processador&"')"

response.Write"Cadastro feito com sucesso!!!!"

else response.Write ("Este código de incidente ja existe!!! Crie outro!!!")

end if

end if

end if

end if

end if

 

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara tudo certo...da uma "bizoiada".

 

<%data = "casa"data01 = "23/12/1988"if not isdate(data) then	response.Write (data & " - Data inválida")else	response.Write (data & " - Data válida.")end ifResponse.Write("<br />")if not isdate(data01) then	response.Write (data01 & " - Data inválida")else	response.Write (data01 &" - Data válida.")end if%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara tudo certo...da uma "bizoiada".

<%data = "casa"data01 = "23/12/1988"if not isdate(data) then	response.Write (data & " - Data inválida")else	response.Write (data & " - Data válida.")end ifResponse.Write("<br />")if not isdate(data01) then	response.Write (data01 & " - Data inválida")else	response.Write (data01 &" - Data válida.")end if%>
pedradegelo,Agora fiquei curioso. Também sugeriria o que você sugeriu para validar a data mas veja o exemplo abaixo:
<%data01 = "23/12"if not isdate(data01) then	response.Write (data01 & " - Data inválida")else	response.Write (data01 &" - Data válida.")end if%>
Mesmo a data01 = "23/13" ele retorna Data Válida. Estou pensando em como contronar este problema.Normalmente faço a consistência em Javascript na hora da digitação do campo o que garante que a data estará correta na hora da gravação.Vou dar um estuda e verei como é possivel executar uma consistência de data no asp.T+

Compartilhar este post


Link para o post
Compartilhar em outros sites

<% If Len(data01) < 10 Then    Response.Write("data inválida")Else  if not isdate(data01) then	response.Write (data01 & " - Data inválida")else	response.Write (data01 &" - Data válida.")end ifEnd If %>

Abraços!

 

PS: 10no caso seria data completa contando as "/" e os dias emês com 2 números.. você pode fazer uma verificação setiver 1 ou 2 dígitos no mês e dia...

 

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

<% If Len(data01) < 10 Then    Response.Write("data inválida")Else  if not isdate(data01) then	response.Write (data01 & " - Data inválida")else	response.Write (data01 &" - Data válida.")end ifEnd If %>
Abraços!PS: 10no caso seria data completa contando as "/" e os dias emês com 2 números.. você pode fazer uma verificação setiver 1 ou 2 dígitos no mês e dia...Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

<% If Len(data01) < 10 Then    Response.Write("data inválida")Else  if not isdate(data01) then	response.Write (data01 & " - Data inválida")else	response.Write (data01 &" - Data válida.")end ifEnd If %>
Abraços!PS: 10no caso seria data completa contando as "/" e os dias emês com 2 números.. você pode fazer uma verificação setiver 1 ou 2 dígitos no mês e dia...Abraços!
Só complentado! E se minha data01 = "01/12/0000" vai dar data correta.Por isso acho q você deveria consistir o len e depois o dia, mes e ano.t+

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.