Ir para conteúdo

POWERED BY:

Arquivado

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

AMD

Preciso de com código para recuperar dados na orde

Recommended Posts

Ola!!

Tenho um banco de dados para cadastro de conteudo de aulas

A recuperação dos dados com o Asp teria que ficar da seguinte forma:

 

AULA QUE PERTECE AO CAPITULO QUE PERTENCE A DICIPLINA

-----------------------

DICIPLINA: 1

Capitulo: 1

aula de comercio

 

DICIPLINA: 2

Capitulo: 1

aula tecnica

 

DICIPLINA: 3

Capitulo: 1

aula vendas

------------------------

Porem a aulas não estão respetiando o capitulo a que pertencem e aparecem todas as aulas abaixo de todos os capitlos de ex:

-----------------------------

DICIPLINA: 1

Capitulo: 1

aula de comercio

aula tecnica

aula vendas

 

DICIPLINA: 2

Capitulo: 1

aula de comercio

aula tecnica

aula vendas

 

DICIPLINA: 3

Capitulo: 1

aula de comercio

aula tecnica

aula vendas

-----------------------

 

Segue o codigo ASP:

 

<%

Set Conexao = Server.CreateObject("ADODB.Connection")
Conexao.Open "DBQ=C:\Inetpub\wwwroot\site\bd.mdb;Driver={Microsoft Access Driver (*.mdb)};"

Dim diciplinas
Set diciplinas = Conexao.Execute("SELECT * FROM diciplinas ORDER BY diciplina ASC")

%>
<table border="0" width="160" id="table14" cellspacing="0" cellpadding="0">
	<tr>
		<td align="right">
		<%WHILE NOT diciplinas.EOF%>
		<table border="0" width="98%" id="table15">
			<tr>
				<td>
				<%=UCase(diciplinas("diciplina"))%></td>
			</tr>
			<tr>
				<td>
					<%
					Dim capitulos
					Set capitulos = conexao.Execute("SELECT * FROM aulas WHERE diciplina LIKE '"&diciplinas("diciplina")&"' ORDER BY capitulo ASC")
					WHILE NOT capitulos.EOF
						Response.Write "Capitulo  "& capitulos("capitulo")& "<br>"
					%>
					</td>
			</tr>
			<tr>
				<td>
					<%
					Dim aulas
					Set aulas = conexao.Execute("SELECT * FROM aulas WHERE capitulo LIKE '"&capitulos("capitulo")&"' ORDER BY numero_aula ASC")
					WHILE NOT aulas.EOF
						Response.Write "Aulas  "& aulas("nome_aula")& "<br>"
					aulas.MOVENEXT : WEND%>
</td>
			</tr>
			<tr>
				<td>
					<%capitulos.MOVENEXT : WEND%></td>
			</tr>
			</table>
			<%diciplinas.MOVENEXT : WEND%>
		</td>
	</tr>
	</table>
<%
Set capitulos = Nothing
Set aulas = Nothing
Set diciplinas = Nothing

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

ta errado a forma como lista

 

deixa eu olhar com calma como estao seus loops

Compartilhar este post


Link para o post
Compartilhar em outros sites

ta errado a forma como lista

 

deixa eu olhar com calma como estao seus loops

 

Oi Mário,

 

Desde já agradeço qualquer ajuda.

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

como voce quer que apareça?

 

em ordem de capitulos depois de disciplina?

 

capitulo e disciplina estao na mesma tabela?

 

se tiver os seguintes registro

 

cap1 disc1

cap2 disc1

cap3 disc1

cap1 disc2

cap2 disc2

cap3 disc2

cap1 disc3

cap2 disc3

cap3 disc3

 

tem que ser listado como?

Compartilhar este post


Link para o post
Compartilhar em outros sites

como voce quer que apareça?

 

em ordem de capitulos depois de disciplina?

 

capitulo e disciplina estao na mesma tabela?

 

se tiver os seguintes registro

 

cap1 disc1

cap2 disc1

cap3 disc1

cap1 disc2

cap2 disc2

cap3 disc2

cap1 disc3

cap2 disc3

cap3 disc3

 

tem que ser listado como?

ESTAVAM NA MESMA TABELA, MAS PRECISEI CRIAR A TABELA CAPITULOS:

 

ESTA ASSIM:

 

Tabela: diciplinas = dentro da tabela (id_diciplina nome_diciplina)

Tabela: capitulo = dentro da tabela ( id_capitulo id_diciplina numero_capitulo nome_capitulo)

Tabela: aulas = dentro da tabela (id_aula id_diciplina id_capitulo nome_aula)

 

Preciso recuperar assim:

 

Diciplinas, capitulos, aulas

 

com loop dentro da de cada uma delas

 

EX:

 

Listar diciplinas:

 

DICIPLINA1

Capitulo1

aula1

aula2

Capitulo2

aula1

aula2

 

DICIPLINA2

Capitulo1

aula1

aula2

Capitulo2

aula1

aula2

 

Desde já agradeçoa a juda

Compartilhar este post


Link para o post
Compartilhar em outros sites

para facilitar seu trabalho pode fazer isso com alguns loops

 

um para listar as disciplinas, dentro destes lista os capitulos e dentro destes as aulas

Compartilhar este post


Link para o post
Compartilhar em outros sites

para facilitar seu trabalho pode fazer isso com alguns loops

 

um para listar as disciplinas, dentro destes lista os capitulos e dentro destes as aulas

Aindei mechedo aqui e coloquei o loop dentro do outro loop como você falou

 

ESTA LISTANDO AS DICIPLINAS DENTRO DAS DICIPLIAS OS CAPITULOS E DENTRO DOA CAPITULOS AS AULAS

POREM ELE SÓ ESTA COLOCANDO AS AULAS QUE FAZEM PARTE DO CAPITULO 1 NOS CAPITULO 2 E 3 NÃO ESTA LISTANDO AS AULAS, ESTA RETORNANDO ASSIM:

 

TESTE

 

Capitulo 01

aula aula1

aula aula2

aula aula3

 

Capitulo 02

 

Capitulo 03

 

 

SEGUE O CODIGO

 

recebe = Request.querystring("id")

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

Conexao.Open conectar

Set diciplinas = Conexao.Execute("SELECT * FROM diciplinas WHERE id_diciplina Like '"&recebe&"'")

Set capitulos = conexao.Execute("SELECT * FROM capitulos WHERE id_diciplina LIKE '"&diciplinas("id_diciplina")&"' ORDER BY numero ASC")

Set aulas = conexao.Execute("SELECT * FROM aulas WHERE id_capitulo LIKE '"&capitulos("id_capitulo")&"' ORDER BY numero ASC")

 

%>

<table border="0" width="160" id="table14" cellspacing="0" cellpadding="0">

<tr>

<td align="right">

<%WHILE NOT diciplinas.EOF%>

<table border="0" width="98%" id="table15">

<tr>

<td>

<%=UCase(diciplinas("nome"))%></td>

</tr>

<tr>

<td>

<table border="0" width="100%" id="table16">

<tr>

<td>

<%

Dim capitulos

WHILE NOT capitulos.EOF

Response.Write "Capitulo "& capitulos("numero")& "<br>"

 

Dim aulas

WHILE NOT aulas.EOF

Response.Write "aula "& aulas("titulo")& "<br>"

aulas.MOVENEXT : WEND

 

capitulos.MOVENEXT : WEND

%>

</td>

</tr>

</table>

</td>

</tr>

<tr>

<td>

<%%></td>

</tr>

</table>

<%diciplinas.MOVENEXT : WEND%>

</td>

</tr>

</table>

<%

Set capitulos = Nothing

Set diciplinas = 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.