Ir para conteúdo

Arquivado

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

Vincent Vega

LOTERIA: Não consigo resolver!

Recommended Posts

Pessoal, estou tentando fazer um sistema onde a página web exibe todos os resultados da mega sena. Exibir os 6 números é fácil, mas eu quero fazer com que os números sorteados apareçam marcados na cartela, com 60 números.Resumindo: quero que apareça uma cartela (tabela) com os 60 números, e que os números sorteados apareçam marcados em uma cor diferente.Já fiz a tabela dinâmica mas não sei resolver essa questão. Alguém se habilita?(+ tarde posso colocar o código)Obrigado!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tá certinha, com 6 linhas de 10 colunas geradas randomicamente.O que eu quero é fazer a comparação dos dados do BD e pintar a célula certa da tabela.Mais ou menos assim: se dados do BD forem iguais ao número da célula, então bgcolor=red.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bem a lógica você já sabe. Posta seu code, assim podemos adaptá-lo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Este é um pedaço de uma página que fiz para conferir jogos da Telemania.

 

Ele mostra todos os números, marca com uma cor os números jogados, com outra cor os números sorteados e com outra os números jogados e sorteados.

 

Acho que pode te dar uma idéia.

 

 

 response.write("<table align=center><tr><td colspan=10>") 	 response.write("<b>Jogo: " & oJogos("jogSeq") & "</b></td></tr>") 	 oNumero = oJogos("jogNumeros")	'string com os números jogados separados por espaço. Ex. 00 05 22 ... 	 oSorteado = oSorteios("sorNumeros")	'string com os números sorteados separados por espaços. Ex. 01 06 17 ... 	 oAcertos = 0 	 for oLinhas = 1 to 10    response.write("<tr>")    for oColunas = 1 to 10   	 oPondo = "<td align=center"   	    	 if inStr(1, oNumero, oLinhas -1 & oColunas -1) > 0 And inStr(1, oSorteado, oLinhas -1 & oColunas -1) > 0 then      oAcertos = oAcertos + 1      oPondo = oPondo & " style=""color:#ff0000;background:#ffff00""><b>" & ((oLinhas -1) * 10) + (oColunas - 1) & "</b></td>"   	 elseif inStr(1, oNumero, oLinhas -1 & oColunas -1) > 0 And inStr(1, oSorteado, oLinhas -1 & oColunas -1) = 0 then      oPondo = oPondo & " style=""color:#888888;background:#ffffff""><b>" & ((oLinhas -1) * 10) + (oColunas - 1) & "</b></td>"   	 elseif inStr(1, oNumero, oLinhas -1 & oColunas -1) = 0 And inStr(1, oSorteado, oLinhas -1 & oColunas -1) > 0 then      oPondo = oPondo & " style=""color:#ffffff;background:#0000ff""><b>" & ((oLinhas -1) * 10) + (oColunas - 1) & "</b></td>"   	 else      oPondo = oPondo & "></td>"   	 end if   	 response.write(oPondo)    next    response.write("</tr>") 	 next 	 response.write("<tr><td align=right colspan=10><b>" & oAcertos & " acertos</b></td></tr>") 	 response.write("</table><br>")  

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu código... ainda não consegui achar a solução:

 

<%SqlSel = "select * from resultados order by concurso desc"Set Rs = Conn.execute(SqlSel)conc = Rs("concurso")while not Rs.EOF%>	<table width="250" cellspacing="2" bgcolor="#999999">	<tr>	<%	col = 5	cont = 1	for no = 1 to 25  if cont <= col then  bg = "#FFFFFF">>>>>>>    if Rs2("n1") = no then  bg = "#FFFF00"  end if  	response.write "<td width=50 align=center bgcolor="& bg &"><font face=Verdana size=2>"& no &"</font></td>"  	cont = cont + 1  else  	response.write "</tr><tr><td width=50 align=center bgcolor="& bg &"><font face=Verdana size=2>"& no &"</font></td>"  	cont = 2  end if	next	%>	</tr>	</table><br><%Rs.movenextwend %>

PS: no BD estou guardando só os números sorteados, 1 em cada coluna. São 15 colunas com números sorteados em cada rodada. São os campos n1, n2, n3... até n15. A linha onde assinalei com >>>> é onde percebo que o código não evolui, e precisaria fazer 15 if's ali... Uff, que horror!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Onde está:

 

>>>>>>>    if Rs2("n1") = no then bg = "#FFFF00" end if

Você pode usar o índice dos campos, assim:

 

for campos = 1 to 15   if Rs2.fields(campos) = no then bg = "#FFFF00"next

Ou mesmo o nome dos campos, assim:

 

for campos = 1 to 15   nomedocampo = "n" & campos   if Rs2(nomedocampo) = no then bg = "#FFFF00"next

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não consegui resolver... já fiz testes e não consigo fazer com que a célula mude de cor.... parece que a função não funciona!!!!

 

Dados do BD: "data", "sorteio", "n1", "n2"... até "n15". (são quinze números sorteados)

 

O código está funcionando neste link.

 

 

<%ConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=XXXXXXXX/lotofacil.mdb;"Set Conn= Server.CreateObject("ADODB.Connection")Conn.Open ConnStrSqlSel = "select * from resultados order by concurso desc"Set Rs = Conn.execute(SqlSel)while not Rs.EOFconc = Rs("concurso")%>	<b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Concurso <%=conc%></font></b> 	<table width="250" cellspacing="2" bgcolor="#999999">	<tr>	<%	col = 5	cont = 1	for Num = 1 to 25'função para mudar cor da célulaSql2 = "select * from resultados where concurso='"&conc&"'"Set Rs2 = Conn.execute(Sql2)'bg = "#FFFFFF"  for campos = 1 to 15    nomedocampo = "n"&campos    if Rs2(nomedocampo) = Num then    bg = "#FFFF00"    end if  next  if cont <= col then 	 response.write "<td width=50 align=center bgcolor="& bg &"><font face=Verdana size=2>"& Num &"</font></td>" 	 cont = cont + 1  else 	 response.write "</tr><tr><td width=50 align=center bgcolor="& bg &"><font face=Verdana size=2>"& Num &"</font></td>" 	 cont = 2  end if	next	%>	</tr>	</table><br><%Rs.movenextwendset Rs = nothingConn.closeset Conn = nothing%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você tem um bd (lotofacil.mdb) que contém duas tabelas, uma com os jogos efetuados e outra com o resultado dos sorteios, certo?

 

A de resultados contém os campos "data", "sorteio", "n1", "n2"... até "n15", certo? E a tabela de números jogados?

 

Bom, você está fazendo duas consultas na mesma tabela (resultados):

SqlSel = "select * from resultados order by concurso desc"Set Rs = Conn.execute(SqlSel)
e

Sql2 = "select * from resultados where concurso='"&conc&"'"Set Rs2 = Conn.execute(Sql2)

Você está comparando resultado com resultado?

O certo não seria comparar números jogados com resultados?

 

Em todo caso, estou montando alguma coisa pra ver se posso te ajudar e já já coloco aqui.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na mega-sena podem ser jogados até 15 números, mas são sorteados apenas 6.

 

No página abaixo, são destacados os 6 números sorteados. Se quiser destacar os números jogados é só fazer alteração no terceiro for ... next.

 

<%Dim ConnStr, Conn, SqlSel, rsSorteiosConnStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & server.MapPath("lotofacil.mdb") & ";"Set Conn= Server.CreateObject("ADODB.Connection")Conn.Open ConnStr'Para não exibir todos os Concursos, selecionei do 501 ao 515SqlSel = "SELECT * FROM tResultados WHERE resSorteio>500 AND resSorteio<516 ORDER BY resSorteio"Set rsSorteios = Conn.execute(SqlSel)while not rsSorteios.EOF	%><b><font face="Verdana, Arial, Helvetica, sans-serif" size="2">Concurso <%=rsSorteios("resSorteio")%></font></b> <table width="250" cellspacing="2" bgcolor="#999999"><%for oLinha = 1 to 6	response.write("<tr>")	for oColuna = 1 to 10  bg= "#FFFFFF"  for oResultado = 1 to 6 	 oCampo = "resN" & oResultado 	 if rsSorteios.fields(oCampo) = ((oLinha -1) * 10) + oColuna then    bg="#FFFF00" 	 end if  next  response.write "<td width=50 align=center bgcolor="& bg &"><font face=Verdana size=2>"& ((oLinha -1) * 10) + oColuna &"</font></td>"	next	response.write("</tr>")next%></table><br><%rsSorteios.movenextwendConn.closeset rsSorteios = nothingset Conn = nothing%>

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.