Ir para conteúdo
Fórum Script Brasil
  • 0

Como Listar Em 3 Colunas Com While


hicarocastro

Pergunta

Olá pessoal preciso fazer um while em em colunas tipo

joao                ivone                  givaldo

maria              naelson                rômulo

gelson              adriano                suyen

Tem como?

Link para o comentário
Compartilhar em outros sites

15 respostass a esta questão

Posts Recomendados

  • 0

ai vai...

<%

do while not rsXXX.EOF

  if contador=0 then

    response.write "<tr>"

  end if

 

  response.write "<td>"

  response.write "XXX"

  response.write "</td>"

 

  contador=contador+1

 

  if contador=3 then

    response.write "</tr>"

    contador=0

  end if

  rsXXX.MoveNext

Loop

%>

wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Realmente, isso ajudaria!

Mas seu HTML estaria inválido, pois conteria erros em alguns momentos...

Pense assim, se você não tiver um número de registros que seja divisível por 3, terá erros... não perceptíveis no layout, mas terá.

Link para o comentário
Compartilhar em outros sites

  • 0
' date='Jan 2 2005, 01:31 AM'] Realmente, isso ajudaria!

Mas seu HTML estaria inválido, pois conteria erros em alguns momentos...

Pense assim, se você não tiver um número de registros que seja divisível por 3, terá erros... não perceptíveis no layout, mas terá.

existem N formas de fazer isso.. apenas citei uma... aqui não deu erro algum de o lay ficar torto ou algo do genero...

wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

outra forma que eu uso

<%
SQL = "SELECT titulo FROM links ORDER BY id DESC"
RS.Open SQL, conexao,3,3 
%>
<table>
<tr> 
<%
n = 1
c = 5
'c, é aqui que você controla o numero de colunas
Do while not RS.Eof
%>
<td width="20%"><%=RS("titulo")%></td>
'<%=RS("titulo")%> é aonde mostra um dado do banco de codigos, você pode por o que quiser aqui
<%
n = n + 1
RS.Movenext
If n > c then
response.write "</tr><tr>"
n = 1
End If
Loop
%>
</table>

Funcional =D

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0
Guest programador

<%select coluna1, coluna2, coluna3, coluna4, coluna5 from tabela, conexao

while not recordset.EOF%>

Coluna 1 = <%=recordset("coluna1")%><br><br>

Coluna 2 = <%=recordset("coluna2")%><br><br>

Coluna 3 = <%=recordset("coluna3")%><br><br>

Coluna 4 = <%=recordset("coluna4")%><br><br>

Coluna 5 = <%=recordset("coluna5")%><br><br>

<%recordset.movenext

wend%>

Link para o comentário
Compartilhar em outros sites

  • 0

show de bola..

ficaria melhor ainda, se tudo fosse feito sem usar o banco.. só nos arrays

tongue.gif

Link para o comentário
Compartilhar em outros sites

  • 0

eu cheguei a fazer um com array, que gera a quantidade de parcelas ... fiz para minha loja isso... e com uma função de calculo de juros... e ainda se derem uma estudada, ele muda a cor das linhas...

<%

' Função para calcular juros.

function taxaJurosCumulativo(valor,jurosmes,vezes)

  taxa = (jurosmes/100)+1

  for i=1 to vezes-1

    valor = valor * taxa

  next

  taxaJurosCumulativo = valor

end function

x = Formatnumber(detalhe("preço"),2) ' valor do produto

y = detalhe("parcela") ' quantidade de parcelas

juros = detalhe("parcela_sem_juros") + 1 'parcelas sem jurtos

juros_am = detalhe("juros") ' % de juros ao mes.

response.write "<table width='100%'>"

For i = 1 To y

If cor = "#FFFFFF" Then

cor = "#DCDCDC"

Else cor = "#FFFFFF"

End If

  if contador=0 then

    response.write "<tr>"

  end if

 

  response.write "<td bgcolor='"&cor&"' width='73'>"

 

If cor = "#FFFFFF" Then

cor = "#DCDCDC"

Else cor = "#FFFFFF"

End If

 

If juros > i Then

juro = "<b>sem juros</b>"

  valor = taxaJurosCumulativo(x,juros_am,i)/i

  valor = Formatnumber(valor)

Else

' tiver algum juros, fazemos a conta de como ficará.

juro = "com juros"

  valor = taxaJurosCumulativo(x,juros_am,i)/i

  valor = Formatnumber(valor)

end if

  Response.Write "" & i& "x " &""& juro &vbcrlf&""

  Response.Write ""& " <td bgcolor='"&cor&"' width='60'><center> R$" & valor &" </center></td>"

 

 

  response.write "</td>"

 

  contador=contador+1

 

  if contador=2 then

    response.write "</tr>"

    contador=0

  end if

Next

response.write "</table>"

deixo ai para quem se interessar estudar...

wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

Vai dizer galera, seria uma boa criar uma função pra isso, onde só colocariamos alguns parâmetros e pronto!

Mas acho q não tem como...

Mas se desse, eu começaria assim eu acho:

Function ListarEmColunas(intNumCol,strCol)
End Funcion

Se alguém tiver uma idéia, divida-a conosco biggrin.gif

Link para o comentário
Compartilhar em outros sites

  • 0

show de bola..

ficaria melhor ainda, se tudo fosse feito sem usar o banco.. só nos arrays

tongue.gif

Tipo assim ?

<%
	Vetor = Recordset.GetRows
	maxLinhas = UBound(Vetor, 2)
	Contador = 0 
	Response.Write("<table border=1>")
	For I = 0 To maxLinhas
  Response.Write("<tr>")
  For C = 0 To 2
  	If Contador <= maxLinhas Then
    Response.Write("<td><p>" & vetor(1, Contador) & "</p></td>")
    Contador = Contador + 1
  	End If
  Next
  Response.Write("</tr>")
	Next
	Response.Write("</table>")
%>

O 'IF' é opcional... na aplicação que utilizei, tive que posiciona-lo desta forma... mas pode ser antes mesmo do 'For C'

Abraços!!

OBS: Veja um vetor, desta forma, c/ paginação

Link para o comentário
Compartilhar em outros sites

  • 0

huhuhu

é assim mesmo tiu urso, hehehe

Matou a pau!

Show de bola o code!

T+

Link para o comentário
Compartilhar em outros sites

  • 0

show de bola..

ficaria melhor ainda, se tudo fosse feito sem usar o banco.. só nos arrays

tongue.gif

Tipo assim ?

<%
	Vetor = Recordset.GetRows
	maxLinhas = UBound(Vetor, 2)
	Contador = 0 
	Response.Write("<table border=1>")
	For I = 0 To maxLinhas
  Response.Write("<tr>")
  For C = 0 To 2
  	If Contador <= maxLinhas Then
    Response.Write("<td><p>" & vetor(1, Contador) & "</p></td>")
    Contador = Contador + 1
  	End If
  Next
  Response.Write("</tr>")
	Next
	Response.Write("</table>")
%>

O 'IF' é opcional... na aplicação que utilizei, tive que posiciona-lo desta forma... mas pode ser antes mesmo do 'For C'

Abraços!!

OBS: Veja um vetor, desta forma, c/ paginação

como chamar esta função?

este código já tem paginação?

O que é arrays?

Link para o comentário
Compartilhar em outros sites

  • 0

como chamar esta função?

este código já tem paginação?

O que é arrays?

Brother!

-Este é um trecho de um código que utilizei em uma aplicação para um cliente wink.gif

- Este código não contém paginação, basta você utilizar um pouco de matematica e lógica que você dividi os registros numa boiada só!!!

- Em relação a Arrays, eu, traduzo da minha forma:

É um conjunto de registro, armazenados em uma variavel organizados por um indice !

Mas como não sou ninguém... deixo a palavra com José Carlos Macoratti.

OBS: O Artigo é escrito para VB, mas você não vai ter muito dificuldade de entender.

Abração!!!

Link para o comentário
Compartilhar em outros sites

  • 0

Bom vou tentar explicar da minha forma o que é array... rss

imagine UMA variavel que você tem que guardar varios valores nela exemplo

Variavel: Casa

Valores: Cama, Toalha, Microondas

Bom agora você precisa utilizar estes valores sozinhos... vou chamar esta variavel

casa/cama

casa/toalha

casa/microondas

meio feio certo ?

mas poderia fazer assim

Casa(2)

já que temos 3 valores (Cama, Toalha, Microondas) e começa a ser contado do 0 ou seja 0,1 e 2

Então eu ponho quantos valores vai ter do lado da "variavel"

Casa(2)

Agora eu quero utilizar o valor toalha... como eu chamo ?

Casa(1)

só por o numero correspondente que no caso é 1...

E se eu quiser mostrar todos os valores ?

Com um For e ubound você faz isso, assim por exemplo

<%
FOR I=0 TO UBOUND(Casa)
response.write casa(i) & "<br>"
Next
%>
Aonde eu estou mostrando que o I vai ter o valor 0, o ubound serve para pegar o maior numero da matriz que no caso é o 2 (lembra ? casa(2)) o response.write vai mosrar o valor do I atual no looping e vai dar um br e o next manda ele pro começo do looping a leitura ficaria assim Para I igual a 0 até o maior numero da matriz casa (que no caso é 2) escreva casa(I atual) mais o enter proximo é facinho tudo isso é caso de treino =) e pra você pegar um valor da arra´y aleatoriamente tambem é facil
<%
randomize
valor = rnd*2
response.write casa(valor)
%>

Aonde o randomize serve para ele forçar o valor não ficar se repetindo

faço a varial valor, nele ponho a função rnd que serve para fazzer o valor aleatorio ponho o *2, que serve para ele pegar um valor aleatorio até o numero 2

e mando ele mostrar pelo response.write a matriz que vai cair aleatoria =)

Resumindo array seria uma forma organizado de você guardar multiplos valores e muito facilmente de chama-los...

Qualquer duvida é só berrar =)

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...