Ir para conteúdo

POWERED BY:

Arquivado

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

Inside

Mostrar dados novamente

Recommended Posts

Sim, olha a estrutura: rm,bime,port,portft,mate,mateft,hist,histft,cien,cienft,ingl,inglft,espa,espaft,fisi,fisift,quim,quimft,biol,biolft,geog,geogft,soci,sociftrm: é o identificador do alunobime: é o bimestre que pode ser de 1 a 4os outros campos são as notas, os campos com ft no final são campos para faltas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Order By na SQL, manda ordenar por matéria, depois por bimestre.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado a todos. Mas eu estou quase desistindo de fazer um Select só e ficando com os onze. Aqui vai a última tentativa.

 

O código é este:

 

 

ASP

[*]

 

[*]

 

[*]sqld1 "SELECT * FROM n where rm = 12 order by bime"

 

[*]

 

[*]set rsd1 conn_de.execute(sqld1)

 

[*]

 

[*]response.write "<table bgcolor=""#ffffff"" border=""0"" cellpadding=""0"" cellspacing=""0"">"

 

[*]

 

[*]do while not rsd1.eof

 

[*] response.write "<tr><td width=""70"" class=""doz"">Matemática</td><td width=""10""></td><td width=""70"" align=""center"" class=""doz"">" & rsd1("mate") & "</td><td width=""15""></td><td width=""10"" align=""center"" class=""doz"">" & rsd1("mateft") & "</td><td width=""15""></td>"

 

[*]rsd1.movenext

 

[*]if rsd1.eof then

 

[*] response.write ""

 

[*]else

 

[*] response.write "<td width=""10""></td><td width=""70"" align=""center"" class=""doz"">" & rsd1("mate") & "</td><td width=""15""></td><td width=""10"" align=""center"" class=""doz"">" & rsd1("mateft") & "</td><td width=""15""></td>"

 

[*]rsd1.movenext

 

[*]end if

 

[*]if rsd1.eof then

 

[*] response.write ""

 

[*]else

 

[*] response.write "<td width=""10""></td><td width=""70"" align=""center"" class=""doz"">" & rsd1("mate") & "</td><td width=""15""></td><td width=""10"" align=""center"" class=""doz"">" & rsd1("mateft") & "</td><td width=""15""></td>"

 

[*]rsd1.movenext

 

[*]end if

 

[*]if rsd1.eof then

 

[*] response.write ""

 

[*]else

 

[*] response.write "<td width=""10""></td><td width=""70"" align=""center"" class=""doz"">" & rsd1("mate") & "</td><td width=""15""></td><td width=""10"" align=""center"" class=""doz"">" & rsd1("mateft") & "</td><td width=""15""></td><td width=""145""></td></tr>"

 

[*]rsd1.movenext

 

[*]end if

 

[*]loop

 

[*]

 

[*] response.write "</table>"

 

[*]

 

[*]

 

 

Se eu acrescento mais este código para mostrar as notas de português por exemplo, não aparece nada:

 

 

ASP

[*]

 

[*]if rsd1.eof then

 

[*] response.write ""

 

[*]else

 

[*] response.write "<td width=""10""></td><td width=""70"" align=""center"" class=""doz"">" & rsd1("port") & "</td><td width=""15""></td><td width=""10"" align=""center"" class=""doz"">" & rsd1("portft") & "</td><td width=""15""></td>"

 

[*]rsd1.movenext

 

[*]end if

 

[*]if rsd1.eof then

 

[*] response.write ""

 

[*]else

 

[*] response.write "<td width=""10""></td><td width=""70"" align=""center"" class=""doz"">" & rsd1("port") & "</td><td width=""15""></td><td width=""10"" align=""center"" class=""doz"">" & rsd1("portft") & "</td><td width=""15""></td>"

 

[*]rsd1.movenext

 

[*]end if

 

[*]if rsd1.eof then

 

[*] response.write ""

 

[*]else

 

[*] response.write "<td width=""10""></td><td width=""70"" align=""center"" class=""doz"">" & rsd1("port") & "</td><td width=""15""></td><td width=""10"" align=""center"" class=""doz"">" & rsd1("portft") & "</td><td width=""15""></td><td width=""145""></td></tr>"

 

[*]rsd1.movenext

 

[*]

 

[*]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora que prestei atenção na estrutura do BD!

Seguinte, coloque os prefixos que usou para as materias em um array e vamos usar Loops. Sua SQL será a mesma com o Order By: Ficará +/- assim:

ASP
  1. ' Tabela
     
  2. ' Linha inicial
     
  3. '2ª Linha 1ª Coluna com todas as matérias, numa só celula
     
  4. While Not RS.EOF
     
  5. ' Acrescenta coluna indicando qual bimestre
     
  6. Response.Write RS("Bim") &"<BR>"
     
  7. For x LBound(Array) to Ubound(Array)
     
  8. Response.Write "Nota: "RS(Array(x)) &" - Faltas: "RS(Array(x)&"ft") &"<BR>"
     
  9. Next
     
  10. 'Fecha coluna
     
  11. RS.MoveNext
     
  12. Wend

Veja se essa lógica te ajuda.

 

 

PS.: Se for possível altere essa estrutura de BD, pois o dia que precisar acrescentar novas matérias vai ter que mecher em todo o BD.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode postar como está essa parte agora?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código está assim:

 

 

ASP

[*]

 

[*]

 

[*]sqld1 "SELECT * FROM n where rm = 12 order by bime"

 

[*]

 

[*]set rsd1 conn_de.execute(sqld1)

 

[*]

 

[*]While Not rsd1.EOF

 

[*]

 

[*]' Acrescenta coluna indicando qual bimestre

 

[*]

 

[*]Response.Write rsd1("Bime") &"<BR>"

 

[*]

 

[*]For x LBound(Array) to Ubound(Array)

 

[*]

 

[*]Response.Write "Nota: "rsd1(Array(x)) &" - Faltas: "rsd1(Array(x)&"ft") &"<BR>"

 

[*]

 

[*]Next

 

[*]

 

[*]'Fecha coluna

 

[*]

 

[*]rsd1.MoveNext

 

[*]

 

[*]Wend

 

[*]

 

[*]

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz assim:

ASP

  1.  
  2. sqld1 "SELECT * FROM n where rm = 12 order by bime"
     
  3. set rsd1 conn_de.execute(sqld1)
     
  4. Materias Split("port,mate,hist,cien,ingl,espa,fisi,quim,biol,geog,soci",",")
     
  5. While Not rsd1.EOF
     
  6. ' Acrescenta coluna indicando qual bimestre
     
  7. Response.Write rsd1("Bime") &"<BR>"
     
  8. For x LBound(Materias) to Ubound(Materias)
     
  9. Response.Write "Nota: "rsd1(Materias(x)) &" - Faltas: "rsd1(Materias(x)&"ft") &"<BR>"
     
  10. Next
     
  11. 'Fecha coluna
     
  12. rsd1.MoveNext
     
  13. Wend

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu certo, porém os dados não estão aparecendo no formato correto. Mas tenho que configurar o html para mostrar os dados corretamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora é basicamente "perfumaria", só ajustes de layout usando tabelas, como estava nos comentários do código.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Os dados estão aparecendo assim:

 

6,2 - 1

7,6 - 4

9,6 - 7

9,6 - 7

 

Porém deveriam aparecer assim:

 

6,2--1--7,6--4--9,6--7--9,6--7

 

O códi é este:

 

ASP

[*]

 

[*]

 

[*]response.write "<table bgcolor=""#ffffff"" border=""0"" cellpadding=""0"" cellspacing=""0"">"

 

[*]

 

[*]Materias Split("port,mate,hist,cien,ingl,espa,fisi,quim,biol,geog,soci",",")

 

[*]

 

[*]While Not rsd1.EOF

 

[*]

 

[*]' Acrescenta coluna indicando qual bimestre

 

[*]

 

[*]Response.Write "<tr>"

 

[*]

 

[*]For x LBound(Materias) to Ubound(Materias)

 

[*]

 

[*]Response.Write "<td class=""doz"">"rsd1(Materias(x)) &" - "rsd1(Materias(x)&"ft") &" - </td>"

 

[*]

 

[*]Next

 

[*]

 

[*]Response.Write "</tr>"

 

[*]

 

[*]'Fecha coluna

 

[*]

 

[*]rsd1.MoveNext

 

[*]

 

[*]Wend

 

[*]

 

[*] response.write "</table>"

 

[*]

 

[*]

Compartilhar este post


Link para o post
Compartilhar em outros sites

tiozinho monta a tabela e faça com que cria uma linha a cada mudança de disciplina o resto voce divide em colunasé só colocar uns TD e TR no lugar certo em seu(s) loop(s)

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.