Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
Deividy

Com Eu Poderia Esta Fazendo O Loop

Question

olha esse código

<%

sql = "SELECT * FROM propriedade WHERE cod=" & id &" ORDER BY cont"

Set cont = Server.CreateObject("ADODB.Recordset")

cont.Open sql, cnn, 3, 3

Response.Write("Visualizar outras Proriedades:")

n = 0

do while not cont.EOF

conter = cont("cont")

cod = cont("cod")

if isNumeric(id) = isNumeric(cod) then

n = n + 1

end if

cont.MoveNext

loop

for i = 1 to n

%>

<a href="propriedades_ce.asp?propriedade=<%=id%>&cont=<%=conter%>" class="bt-voltar">[<%= i %>]</a>

<%

next

cont.Close

Set cont = Nothing

onde esta escrito em vermelho

tipo assim preciso fazer que que o conter aparece todos que estão cadastrado é como se fosse um segundo id mais não estou conseguindo fazer ele mostrar os numeros corretamente e como ele esta agora ele só mostra um deles

se eu colocar o loop para o fim ele multiplica o i fazendo aparecer dois primeiros numeros!

como eu arrumo isso?

Share this post


Link to post
Share on other sites

8 answers to this question

Recommended Posts

  • 0

Cara Tá Estranho!

Para que você precisa do IF? Não é a mesma comparação da cláusula WHERE?

Então. Coloca tudo dentro do laço "Do While".

Se não der certo posta de novo.

Abraços.

wacko.gif

Share this post


Link to post
Share on other sites
  • 0

então seria se o numero que quero fosse os mesmo.

é assim

o cont é uma estensão do cliente

ex

cliente 1 == ele tem 2 casa

cliente 2 == ele tem 3 casa

cliente 3 == ele tem 1 casa

então para que eu identifique cada um fiz assim

cliente tem seu cod esse mesmo se repeti caso ele tenha mais de uma casa

ai para saber quanta casa ele tem eu coloquei o cont

então n obanco fica

cod | cont

cliente | identificando a casa dele

dai que entra i for

eu conteu o registro do cont porque faço isso simple porque se ele tem 3 casa e deleta a 2 o numero é crescente ai ele não fica na ordem digo 1 2 3 4

ele esta ficando

1 3 4

e quero que fique

1 2 3

onde sei que o 3 no meu caso ai em ultimo é o 4 no banco

Share this post


Link to post
Share on other sites
  • 0

Cara de boa, não entendi nada!

Deixe-me tentar:

Cada Cliente pode ter um número X de casas.

Pra cada casa dele é gerado um registro?

Você quer mostrar quantas casas cadastradas ou quantos registros têm determinado cliente?

Explica ae melhor!

Abraços!

Share this post


Link to post
Share on other sites
  • 0

fico dificil imagino mesmo!

bom é assim

ex.

tenho um registro com meu nome ai claro tenho um id

aqui no caso

id = 10

eu posssuo 3 casas

esse registro é feito então fica assim

cliente quant nome endereço

id = 10 1 nome da casa rua...

id = 10 2 nome da casa rua...

id = 10 3 nome da casa rua...

id = 12 1 nome da casa rua...

id = 15 1 nome da casa rua...

bom esta ai meu registro é isso

agora na tela ficava assim

abria meu registro conparava o id de quem estava querendo ver e dava um loop para que mostra-se a "quant" de casa "cliente"

fico perfeito poderm...

se eu apago o " 2 " do cliente "10" o registro vai me mostrar assim

"1" "3"

e não quero que fique assim

ai resolver fazer como esta ai em cima...

só que não esta funcionado porque o quant que tem esse nome no meu código "conter = cont("cont") " não entra no loop para funciona

acho que agora fui mais claro

e dava um loop

Share this post


Link to post
Share on other sites
  • 0

Não seria mais fácil usar SQL para contar a quantidade para você? Exemplo:

<%
sql = "SELECT cod, Count(cod) as quantidade FROM propriedade WHERE cod=" & id &" GROUP BY cod"

Set cont = Server.CreateObject("ADODB.Recordset")
cont.Open sql, cnn, 3, 3

Response.Write("Visualizar outras Propriedades:")

cod = cont("cod")
qt = cont("quantidade")

for i = 1 to qt %>
  <a href="propriedades_ce.asp?propriedade= <% =cod %> & cont= <% =qt %>" class="bt-voltar">[<% =i %>]</a> <%
next

cont.Close
Set cont = Nothing
%>

Não testei aqui, mas seria isso?

Abraços,

Graymalkin

Share this post


Link to post
Share on other sites
  • 0

então isso que se fez é igual ao que eu tinha feito com a diferença que você somo no sql valeu diminuiu meu código

mais ainda continua meu problema

qt que no meu código chega 3 então tenho o registro 1 e 3 ele precisa ter um loop nele e esse loop precisa ser junto com o for

Share this post


Link to post
Share on other sites
  • 0
então isso que se fez é igual ao que eu tinha feito com a diferença que você somo no sql valeu diminuiu meu código

mais ainda continua meu problema

qt que no meu código chega 3 então tenho o registro 1 e 3 ele precisa ter um loop nele e esse loop precisa ser junto com o for

Não entendi. Ali no caso, você vai ter apenas um registro. Se você pede o cliente de id=1, você terá (no recordset cont):

id quantidade

1 3

Se qt = quantidade e quantidade = 3 então aquele For vai escrever 1, 2, 3, independente do número da casa. Não é isso que você quer?

Abraços,

Graymalkin

Share this post


Link to post
Share on other sites
  • 0

pessoal agradeço a quem tenha me ajudado!

como é um problema com o qual eu tinha muitoa pressa em resolver eu não desiti um só instante em consegui um resultado plausivel

então aqui esta a conclusão

 <%
sql = "SELECT cod, cont FROM propriedade WHERE cod=" & id &" ORDER BY cont"
Set cont = Server.CreateObject("ADODB.Recordset")
cont.Open sql, cnn, 3, 3

if not cont.EOF then
	matriz = cont.GetRows()
end if	

Response.Write("Visualizar outras Proriedades:")

nRows = UBound( matriz, 2 )
For row = 0 to nRows
%>
<a href="propriedades_ce.asp?propriedade=<%= matriz(0, row ) %>&cont=<%= matriz(1, row ) %>" class="bt-voltar">[<%= row +1 %>]</a>
<%
Next 
cont.Close
Set cont = Nothing
%> 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  



  • Forum Statistics

    • Total Topics
      148117
    • Total Posts
      643400
×
×
  • Create New...