Ir para conteúdo

POWERED BY:

Arquivado

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

apenasestudando

While

Recommended Posts

Galera do estudando o while, mas surgiu algumas dúvidas:

 

Olhem esse While:

 

ASP

[*]While Not ObjRS.eof

 

[*]

 

[*] idCategoria ObjRS("idCategoria")

 

[*]

 

[*]ObjRS.moveNext

 

[*]Wend

 

[*]

 

[*]Response.Write(idcategoria)

 

 

No while acima ele lista o ultimo idCategoria do banco de dados:

 

No Caso eu preciso de um While que liste todos os idCategoria do ObjRS, pois depois preciso comparar os idCategoria, no caso eu terei que colocar um incremento para ele pegar todos os idCategoria?

 

E porque que nesse While acima ele pega somente o último idCategoria? No caso o laço não passa do primeiro ao último? Não entendi :wacko:

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

O While serve para você repetir um processo enquato uma condição seja verdadeira.

 

Fas isso que talves funcione...

 

While Not ObjRS.eof  response.write ObjRS("idCategoria")&"<br>"ObjRS.moveNextWend

Compartilhar este post


Link para o post
Compartilhar em outros sites

O comando While...Wend executa uma determinada rotina até que a condição imposta seja alcançada. Observe o exemplo:

 

ASP

[*]<%

 

[*]q "SELECT * FROM cadastro where cidade = 'São Paulo'"

 

[*]connstring "DBQ=c:\teste.mdb;Driver={Microsoft Access Driver (*.mdb)}" 

 

[*]Set Conexao Server.CreateObject("ADODB.Connection")

 

[*]Conexao.Open connstring, "","" 

 

[*]Set tabela Conexao.Execute (q) 

 

[*]

 

[*]While not tabela.EOF

 

[*]response.write tabela("nome").value

 

[*]tabela.movenext 

 

[*]wend 

 

[*]%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O comando While...Wend executa uma determinada rotina até que a condição imposta seja alcançada. Observe o exemplo:

 

ASP

[*]<%<br />q "SELECT * FROM cadastro where cidade = 'São Paulo'"<br />connstring "DBQ=c:\teste.mdb;Driver={Microsoft Access Driver (*.mdb)}" <br />Set Conexao Server.CreateObject("ADODB.Connection")<br />Conexao.Open connstring, "","" <br />Set tabela Conexao.Execute (q) <br /><br />While not tabela.EOF<br />response.write tabela("nome").value<br />tabela.movenext <br />wend <br />%>

<{POST_SNAPBACK}>

Entendi..oque não entendi é o porque desse while só exibir o último idcategoria do objeto objRs. Esse While que você me passou ele exibe todos os idcategoria. Na verdade eu preciso criar uma variável e depois usar ela em uma array. Olha:

 

ASP

[*]While Not ObjRS.eof

 

[*]

 

[*]

 

[*]

 

[*] idCategoria ObjRS("idCategoria")

 

[*]

 

[*]

 

[*]

 

[*]ObjRS.moveNext

 

[*]

 

[*]Wend

 

 

Depois eu vou usar a variável idcategoria para fazer comparações e ver se todos os idcategorias são iguais, se forem eu faço uma ação caso contrário outra. Entendeu?

 

O que nao entedi é o porque do while acima só exibir o último idcategoria.

 

Alguém sabe?

 

Grato

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara...

 

Aparece só o ultimo pq você está sobreescrevendo o valor anterior.

Se você quiser ver todas as ocorrencias terá que concatenar a variavel.

 

While Not ObjRS.eof  idCategoria = idCategoria & "-" & ObjRS("idCategoria")ObjRS.moveNextWendResponse.write idcategoria

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.