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

Contar Registros...


Fabiano_Gabriel

Pergunta

Pessoal,

Tenho duas SQL's uma que pesquisa os CLIENTES e outra os FORNECEDORES, dentro do loop que pesquisa os cliente coloquei o seguinte:

contcli = contcli + 1

e do loop que pesquisa os FORNECEDORES coloquei:

contfor = contfor + 1

depois no final de tudo fora do loop coloquei:

contresp = contcli + contfor

Response.write contresp

O problema é chamar essa variável lá no alto da pagina, acima dos registros encontrados...

Como faço isso?? Será que Session resolveria ???

Valeu!!!

Fabiano.

Link para o comentário
Compartilhar em outros sites

16 respostass a esta questão

Posts Recomendados

  • 0

hmm

antes de você querer mostrar a variavel, logicamente, você precisa atribuir valor à ela, senao ela ficará vazia..

Uma solução, seria colocar esse esquema todo em uma função, e depois mostrar o resultado da função (mas é complicadinho..)

Outra solução, seria fazer a contagem, jogar o total numa session, e recarregar a pagina. E mostrar o valor da session na tela

Link para o comentário
Compartilhar em outros sites

  • 0

dim contcli,contfor,contresp

contcli=0

contfor=0

inicio ciclo clientes

contcli = contcli + 1

fim ciclo clientes

inicio ciclo fornecedores

contfor = contfor + 1

fim ciclo fornecedores

contresp = contcli + contfor

Response.write contresp

Isto assim não tem como dar errado...

Só se estiver percebendo mal qualquer coisa.

Link para o comentário
Compartilhar em outros sites

  • 0

hehe

veja a minha mensagem:

Outra solução, seria fazer a contagem, jogar o total numa session, e recarregar a pagina. E mostrar o valor da session na tela

O que seria recarregar a pagina?

Algo como redirecionar ela, para ela mesma, hehe

response.redirect "pagina.asp"
ou
server.transfer "pagina.asp"
ou em javascript:
	response.write "<script>"
	response.write "window.location='pagina.asp'"
	response.write "</script>"

Abraços

Link para o comentário
Compartilhar em outros sites

  • 0

Cria a conexão com a base de dados e executa os códigos de contagem

 dim contcli,contfor,contresp

contcli=0
contfor=0

inicio ciclo clientes

contcli = contcli + 1

fim ciclo clientes

inicio ciclo fornecedores

contfor = contfor + 1

fim ciclo fornecedores

contresp = contcli + contfor
Response.write contresp

algo deste tipo

depois cria outros ciclos para mostrarem os registos.

muito simples.

Primeiro são contados os registos, e é mostrado o número que você quer no topo da página depois são mostrados os registos com a 2ª série de ciclos.

Ainda existe uma maneira mais fácil.

Coloca os dois ciclos juntos (como tava a fazer no inicio) e então em vez de fazer o Response.Write contresp, cria um <div> no topo da página. Super simples e eficaz esta última opção!!!!! muito melhor que a de cima.

Espero ter ajudado.

Link para o comentário
Compartilhar em outros sites

  • 0

Claro que tem.

Refresh automatico do JavaScript, encontrei um de 5 segundos na net, pode mudar para menos tempo se quiser na variável speed:

<script language="Javascript">
<!--
// please keep these lines on when you copy the source
// made by: Nicolas - http://www.javascript-page.com

var URL   = "auto-reload2.html"
var speed = 5000


function reload() {
location = URL
}

setTimeout("reload()", speed);
//-->
</script>

Este aqui também dá para fazer redirecionamento automático.

Link para o comentário
Compartilhar em outros sites

  • 0

porque você não faz um select so para contar??

sql="select.......
set rs=conn.execute(sql)
conta=0
ai começa o loop.....
conta=conta+1
rs.movenext
wend
rs.close
response.write conta
ai é so colocar no inicio da pagina....
Isso parece que não pode ser porque acho que ele usa as duas variáveis (clientes e fornecedores durante a página e depois é que as soma. Isto pelo que eu entendi daqui:
depois no final de tudo fora do loop coloquei: contresp = contcli + contfor Response.write contresp
Mas o Fabiano podia fazer o que eu disse aqui:
ah agora já percebi... antes dos registos... é fácil, primeiro conta e depois posta os registos... Fica uma página maior mas é a solução mais fácil...
e aqui:
Cria a conexão com a base de dados e executa os códigos de contagem
dim contcli,contfor,contresp

contcli=0
contfor=0

inicio ciclo clientes

contcli = contcli + 1

fim ciclo clientes

inicio ciclo fornecedores

contfor = contfor + 1

fim ciclo fornecedores

contresp = contcli + contfor
Response.write contresp

algo deste tipo (você

depois cria outros ciclos para mostrarem os registos.

muito simples.

Primeiro são contados os registos, e é mostrado o número que você quer no topo da página depois são mostrados os registos com a 2ª série de ciclos.

e ainda existe a solução do <div> que é super simples, pois os divs têm instruções de posicionamento, assim mesmo no fim da página pode colocar divs no topo!

Mas parece que o Fabiano_Gabriel não quer, que é que a gente pode fazer. Ele é que sabe!

Por isso já lhe enviei o código para o Reload da página. Espero ter ajudado Fabiano rolleyes.gif Força aí colega!

Link para o comentário
Compartilhar em outros sites

  • 0

opa... não percebi muito bem essa "jogada" bareta.

Pelo que eu entendi, ele vai contando os registos à medida que os vai mostrando, e tem dois ciclos para isso. Seria algo deste tipo (corrija-me se tiver errado):

conexao = blabla...

sql = blablablabla...

rs = blablabla...

inicio ciclo clientes

Response.Write (rs("campo"))

contador_clientes = contador_clientes +1

fim do ciclo clientes

inicio ciclo fornecedores

Response.Write (rs("campo"))

contador_fornecedor = contador_fornecedores +1

fim do ciclo fornecedores

e depois ele tem o

contador_total = contador_clientes + contador_fornecedores

e como quer colocar lá em cima o mais fácil era:

%> <div id="Layer1" style="position:absolute; left:202px; top:26px; width:603px; height:80px; z-index:10"><%=contador_total%></div>

Repare que o que está a negrito faz com que a variável seja chamada no início da página. Os valores do div obviamente deverão ser editados de forma a ficar tudo bem.

Quanto a este tópico, ou eu percebi tudo mal, ou então esta maneira é super-fácil, super-eficaz e muito melhor do que a de guardar a varíavel na session e depois fazer o refresh.

Tá dito wink.gif eheh Tou gostando deste fórum. Parabéns. Muito Bom mesmo, principalmente pelo espirito de entreajuda que há aqui. Eu quase que fico mais preocupado com os problemas dos que tento ajudar do que com os meus próprios problemas!!! e sei que existem aqui utilizadores (muitos) que também sentem isto! Como dizem aí no Brasil, "Valeu galera!" wink.gif

Link para o comentário
Compartilhar em outros sites

  • 0

hehehe é isso ai...

inicio ciclo clientes

Response.Write (rs("campo"))

t=rs("campo")

contador_clientes = contador_clientes +1

fim do ciclo clientes

mas aqui não precisa do response.write.... so se fosse escrever todos os registros do bd........

para calcular pode-se usar algo como t=rs("campo") somente para que haja erros....no loop... ali substituindo o azul pelo vermelho..

Link para o comentário
Compartilhar em outros sites

  • 0

eu coloquei o Response.write aí porque me pareceu que ele quer mostrar todos os registos mesmo...

O problema é chamar essa variável lá no alto da pagina, acima dos registros encontrados...

Fabiano, se for aquilo que a gente pensa, colega... usa o div! é a solução mais fácil e eficaz!

Nota: ah, já agora uma curiosidade. Já vi em alguns sites e fórums brasileiros alguns utilizadores (brasileiros também) a criticarem (o que acho compreensível) algumas traduções de software ou de código, por erros de gramática, um dos tais "erros" era onde está ".... registo ...." e não ".... registro ....". A verdade é no Português de Portugal (onde eu nasci e vivo), registo se escreve sem r, apenas a variante brasileira leva r . É apenas para evitar algumas confusões de gramática, e como eu disse, é apenas uma curiosidade que me lembrei agora quando o bareta escreveu registro. wink.gif

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...