Ir para conteúdo

Arquivado

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

zanelati2002

numero de cadastros

Recommended Posts

Pessoal se alguém puder me ajudar olha só to tentando mostrar para o user os cadastros qeu o site teve ontem e hoje

 

To usando este codigo mais cada dia marca um numero não marca o numero certo tipo marca um numero totalmente errado

 

 

 

<%	ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
	Set conexao = Server.CreateObject("ADODB.Connection")
	conexao.open ConnectString
	
	set rs1 = server.CreateObject("ADODB.RecordSet")
	set rs2 = server.CreateObject("ADODB.RecordSet")	
	rs1.open "select count(*) as Ontem from Users where Day(data) = "& Day(Now)-1, conexao
	rs2.open "select count(*) as Hoje  from Users where Day(data) = "& Day(Now), conexao
	
	totOntem = rs1("Ontem")
	totHoje =  rs2("Hoje")		
	%>
					  - Hoje: <B><%=totHoje%></B>
					  - Ontem: <B><%=totOntem%>

grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Em suas SQL's use a data mesmo e não o dia, use a função DateADD para subtrair um dia.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na sua SQL, da forma que está atualmente, ele irá pegar todos os cadastros do dia anterior, por exemplo "11", independente do mês.

 

Use assim:

select count(CampoID) as Ontem from Users where Date(data) = "& DateADD("d",-1,Now()) &";"

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok, salgado mais e para mostrar o do dia pois este codigo que postou foi o do dia anterior correto que ficria assim

 

 

<%	ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
	Set conexao = Server.CreateObject("ADODB.Connection")
	conexao.open ConnectString
	
	set rs1 = server.CreateObject("ADODB.RecordSet")
	set rs2 = server.CreateObject("ADODB.RecordSet")	
	rs1.open "select count(CampoID) as Ontem from Users where Date(data) = "& DateADD("d"-1,Now()) &";" , conexao
	rs2.open "select count(*) as Hoje  from Users where Day(data) = "& Day(Now), conexao
	
	totOntem = rs1("Ontem")
	totHoje =  rs2("Hoje")		
	%>
					  - Hoje: <B><%=totHoje%></B>
					  - Ontem: <B><%=totOntem%>

Ta certo o codigo acima tipo ,conexao da certo isto

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poxa, é só pensar um pouco. Se para a data de ontem eu diminuí 1 a data de hoje é só colocar ela mesmo, só adaptar a SQL de ontem para hoje e pronto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, é só tentar entender o que fiz na SQL de "ontem" e aplicar na de "hoje". Se ficarmos sempre "fazendo" as alterações você não irá entender o porque do que foi feito.

 

Todo o tipo de programação que imaginar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Substitua pelo campo que é chave primária de sua tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

SAgado to tentando fazer

 

mais ta dando este erro

 

- Total: 1751

Microsoft VBScript runtime error '800a000d'

 

Type mismatch: '[string: "d"]'

 

/use.asp, line 27

 

Tipo ta mostrando o total de users

mais os cadastros do dia e do dia anterior não olha o codigo

 

- Total: 
						<B><%
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
conn.open ConnectString
set rs = conn.execute("select count(*) as nconta from users")

response.write(" "&rs("nconta"))%></B></FONT></TD></TR>
					<TR><%
	ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
	
	set rs1 = conn.execute
	set rs2 =  conn.execute	
	rs1.open "select count(id) as Ontem from Users where Day(data) = "& DateADD("d"-1,Now()) &";", conexao
	rs2.open "select count(id) as Ontem from Users where Day(data) = "& DateADD("d"-2,Now()) &";", conexao
	
	totOntem = rs1("Ontem")
	totHoje =  rs2("Hoje")		
	%>
					  <TD><FONT face="Verdana, Arial" size=1>- Hoje: 
						<B><%=totHoje%></B></FONT></TD></FONT></TD></TR>
					<TR>
					  <TD><FONT face="Verdana, Arial" size=1>- Ontem: 
						<B><%=totOntem%></B>
</body>

</html>

valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe pelo erro, faltou uma virgula: troque

rs1.open "select count(id) as Ontem from Users where Day(data) = "& DateADD("d"-1,Now()) &";", conexao

rs2.open "select count(id) as Ontem from Users where Day(data) = "& DateADD("d"-2,Now()) &";", conexao

Por:

	rs1.open "select count(id) as Ontem from Users where Day(data) = "& DateADD("d",-1,Now()) &";", conexao
rs2.open "select count(id) as Ontem from Users where Day(data) = "& Date(Now()) &";", conexao

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salgado fiz assim mais deu erro mesmo

 

1751

Microsoft JET Database Engine error '80040e14'

 

Syntax error (missing operator) in query expression 'Day(data) = 5/12/2008 10:05:41 AM'.

 

/use.asp, line 25

 

o codigo

 

<%
	ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
	Set conexao = Server.CreateObject("ADODB.Connection")
	conexao.open ConnectString
	
	set rs1 = server.CreateObject("ADODB.RecordSet")
	set rs2 = server.CreateObject("ADODB.RecordSet")	
	rs1.open "select count(id) as Ontem from Users where Day(data) = "& DateADD("d",-1,Now()) &";", conexao
	rs2.open "select count(id) as Ontem from Users where Day(data) = "& Date(Now()) &";", conexao
	totOntem = rs1("Ontem")
	totHoje =  rs2("Hoje")		
	%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, substitua DateADD("d",-1,Now()) por Date(DateADD("d",-1,Now())) e teste.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma coisa que vi agora, na SQL que eu postei está Date(data) na que você postou agora no final está Day(data). Faça essa correção e verifique.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Salgado olha o codigo que to testando

- Total: 
						<B><%
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
conn.open ConnectString
set rs = conn.execute("select count(*) as nconta from users")

response.write(" "&rs("nconta"))%></B></FONT></TD></TR>
					<TR><%
	ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
	
	set rs1 = conn.execute
	set rs2 =  conn.execute	
	rs1.open "select count(id) as Ontem from Users where Day(data) = "& Date(DateADD("d",-1,Now())) &";", conexao
	rs2.open "select count(id) as Ontem from Users where Day(data) = "& Date(Now()) &";", conexao	
	
	totOntem = rs1("Ontem")
	totHoje =  rs2("Hoje")		
	%>
					  <TD><FONT face="Verdana, Arial" size=1>- Hoje: 
						<B><%=totHoje%></B></FONT></TD></FONT></TD></TR>
					<TR>
					  <TD><FONT face="Verdana, Arial" size=1>- Ontem: 
						<B><%=totOntem%></B></body></font></html>

Esta dando este erro mais você viu que escrevi que minha data no db é esta em formato texto

olha o erro

 

- Total: 1751

Microsoft VBScript runtime error '800a01c2'

 

Wrong number of arguments or invalid property assignment: 'execute'

 

/use.asp, line 13

Compartilhar este post


Link para o post
Compartilhar em outros sites

Testa com essas alterações:

- Total:
					<B><%
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
Set conn = Server.CreateObject("ADODB.Connection")
conn.open ConnectString
set rs = conn.execute("select count(*) as nconta from users")

response.write(" "&rs("nconta"))%></B></FONT></TD></TR>
				<TR><%
ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("base.mdb")
Set conn = Server.CreateObject("ADODB.Connection")

set rs1 = conn.execute("select count(id) as Ontem from Users where Date(data) = "& Date(DateADD("d",-1,Now())) &";") 'Alterei aqui
set rs2 =  conn.execute("select count(id) as Ontem from Users where Date(data) = "& Date(Now()) &";") 'E aqui

totOntem = rs1("Ontem")
totHoje =  rs2("Hoje")		
%>
				  <TD><FONT face="Verdana, Arial" size=1>- Hoje:
					<B><%=totHoje%></B></FONT></TD></FONT></TD></TR>
				<TR>
				  <TD><FONT face="Verdana, Arial" size=1>- Ontem:
					<B><%=totOntem%></B></body></font></html>

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.