rcnery Postado Janeiro 11, 2004 Denunciar Share Postado Janeiro 11, 2004 Pessoal,To fazendo um sistema de votação que a pessoa só pode votar uma vez por dia verificando o enderço ip e gravando o mesmo em um bd por 1 dia.O problema é que estou recebendo a seguinte mensagem e não consegui resolver.Microsoft OLE DB Provider for ODBC Drivers error '80040e07' [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression. /galeria/ipvoto.asp, line 39 Código.<!--#include virtual="../adm/openbanco.asp"--><%Dim ipvotoDim votoidDim ipdataDim datavotoid = 0ipvoto = Request.ServerVariables("REMOTE_ADDR")data = dateSet RS = Server.CreateObject("ADODB.Recordset")RS.ActiveConnection = ConRS.Open "Select * FROM ipvoto WHERE ipidvoto = "& votoid & " " WHILE not RS.EOFipdata = RS ("ipdata")varDiferenca = datediff("d",ipdata,data)IF varDiferenca < 1 THENsqlString = "delete * from ipvoto where ipdata = '"& data & "' " Con.Execute sqlString ELSEsqlString = "Select * from ipvoto where ipvotou = "& ipvoto & " " Con.Execute sqlString IF sqlString <> "" THENResponse.Write " Você já votou nessa foto hoje, por favor retorne amanhã."END IFRS.MoveNextEND IFWEND%><%=ipvoto%><br><%=data%><br><%=votoid%><br><%' Add New IPsqlString = "INSERT INTO ipvoto " &_"(ipvotou, ipidvoto, ipdata ) VALUES (" &_"'" & ipvoto &"', "&_"'" & votoid &"', "&_"'" & data &"')"Con.Execute sqlString%>O BD esta assimipvotou - Texto já tentei com numero e tb deu erro.ipidvoto - Numero já tentei com texto e nadaipdata - Data/hora unico que não auterei.Obrigado por me ajudarem. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ursolouco Postado Janeiro 11, 2004 Denunciar Share Postado Janeiro 11, 2004 Pessoal,To fazendo um sistema de votação que a pessoa só pode votar uma vez por dia verificando o enderço ip e gravando o mesmo em um bd por 1 dia.O problema é que estou recebendo a seguinte mensagem e não consegui resolver.Microsoft OLE DB Provider for ODBC Drivers error '80040e07' [Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression. /galeria/ipvoto.asp, line 39 Código.<!--#include virtual="../adm/openbanco.asp"--><%Dim ipvotoDim votoidDim ipdataDim datavotoid = 0ipvoto = Request.ServerVariables("REMOTE_ADDR")data = dateSet RS = Server.CreateObject("ADODB.Recordset")RS.ActiveConnection = ConRS.Open "Select * FROM ipvoto WHERE ipidvoto = "& votoid & " " WHILE not RS.EOFipdata = RS ("ipdata")varDiferenca = datediff("d",ipdata,data)IF varDiferenca < 1 THENsqlString = "delete * from ipvoto where ipdata = '"& data & "' " Con.Execute sqlString ELSEsqlString = "Select * from ipvoto where ipvotou = "& ipvoto & " " Con.Execute sqlString IF sqlString <> "" THENResponse.Write " Você já votou nessa foto hoje, por favor retorne amanhã."END IFRS.MoveNextEND IFWEND%><%=ipvoto%><br><%=data%><br><%=votoid%><br><%' Add New IPsqlString = "INSERT INTO ipvoto " &_"(ipvotou, ipidvoto, ipdata ) VALUES (" &_"'" & ipvoto &"', "&_"'" & votoid &"', "&_"'" & data &"')"Con.Execute sqlString%>O BD esta assimipvotou - Texto já tentei com numero e tb deu erro.ipidvoto - Numero já tentei com texto e nadaipdata - Data/hora unico que não auterei.Obrigado por me ajudarem. Brother!!Algo interessante, qual banco de dados esta usando e qual formato da data que esta tentando se inserir os dados ?Experimente ultilizar no seu código 'Session.LCID = 1046' para transformar sua data no formato brasileiro (11/01/2004) e inserir-la no seu banco de dados.Espero que lhe ajude...Abraços!!![urso] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rcnery Postado Janeiro 11, 2004 Autor Denunciar Share Postado Janeiro 11, 2004 UrsoValeu pela dica, vou tentar e depois eu fala se funcionou.Estou usando o acces.ValeuAbraçoRicardo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ursolouco Postado Janeiro 12, 2004 Denunciar Share Postado Janeiro 12, 2004 UrsoValeu pela dica, vou tentar e depois eu fala se funcionou.Estou usando o acces.ValeuAbraçoRicardo beleza!!!Qualquer coisa, POSTA ai novamente sua dúvida ou Erro!!!Boa Sorte!!![urso] Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rcnery Postado Janeiro 12, 2004 Autor Denunciar Share Postado Janeiro 12, 2004 UrsoResolvi o problema alterando o código para esse aqui.Pode fechar o tópico.Valeu pela ajuda.Ricardo<!--#include virtual="../adm/openbanco.asp"--><%Session.LCID=1046votoid = cINT ("2")ipvoto = Request.ServerVariables("REMOTE_ADDR")mdata = dateSet RS = Server.CreateObject("ADODB.Recordset")RS.ActiveConnection = ConSql = "delete * from ipvoto where (#"&mdata&"#-ipdata)<>0"Con.Execute SqlRS.Open "Select * FROM ipvoto WHERE ipvotou = '"& ipvoto & "' " While not RS.EOF ipidvoto = cInt (RS ("ipidvoto"))%> <%=ipidvoto%> <br> <%=votoid%><br> <% IF ipidvoto = votoid THEN Response.Redirect("../webroom.asp?showpage=galeria") END IF RS.MOVENEXTWEND%><%= ipvoto %> <br><%= votoid %> <br><%= mdata %> <br><%' Add New IPsqlString = "INSERT INTO ipvoto " &_"( ipvotou, ipidvoto, ipdata ) VALUES (" &_"'" & ipvoto &"', "&_"'" & votoid &"', "&_"'" & mdata &"')"Con.Execute sqlString%> Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
rcnery
Pessoal,
To fazendo um sistema de votação que a pessoa só pode votar uma vez por dia verificando o enderço ip e gravando o mesmo em um bd por 1 dia.
O problema é que estou recebendo a seguinte mensagem e não consegui resolver.
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.
/galeria/ipvoto.asp, line 39
Código.
<!--#include virtual="../adm/openbanco.asp"-->
<%
Dim ipvoto
Dim votoid
Dim ipdata
Dim data
votoid = 0
ipvoto = Request.ServerVariables("REMOTE_ADDR")
data = date
Set RS = Server.CreateObject("ADODB.Recordset")
RS.ActiveConnection = Con
RS.Open "Select * FROM ipvoto WHERE ipidvoto = "& votoid & " "
WHILE not RS.EOF
ipdata = RS ("ipdata")
varDiferenca = datediff("d",ipdata,data)
IF varDiferenca < 1 THEN
sqlString = "delete * from ipvoto where ipdata = '"& data & "' "
Con.Execute sqlString
ELSE
sqlString = "Select * from ipvoto where ipvotou = "& ipvoto & " "
Con.Execute sqlString
IF sqlString <> "" THEN
Response.Write " Você já votou nessa foto hoje, por favor retorne amanhã."
END IF
RS.MoveNext
END IF
WEND
%>
<%=ipvoto%><br>
<%=data%><br>
<%=votoid%><br>
<%
' Add New IP
sqlString = "INSERT INTO ipvoto " &_
"(ipvotou, ipidvoto, ipdata ) VALUES (" &_
"'" & ipvoto &"', "&_
"'" & votoid &"', "&_
"'" & data &"')"
Con.Execute sqlString
%>
O BD esta assim
ipvotou - Texto já tentei com numero e tb deu erro.
ipidvoto - Numero já tentei com texto e nada
ipdata - Data/hora unico que não auterei.
Obrigado por me ajudarem.
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
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.