Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Um amigo nosso aki do forum - o Guardiao - postou um sistema de random muiiiiiiiiiiito bom , mas eu queria que mostrasse somente 5 registros mas naum consigo alterar no codigo que mostra todos os registros de uma vez em random... abaixo segue o codigo se alguem puder me ajudar.... ou melhor nos ajudar pois acho que tem muitos querendo aprender isto...Code:<%Response.expires = 0Response.Buffer=TrueSet strConexao = Server.CreateObject("ADODB.Connection")strConexao.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("banco.mdb")'-------------------------------------------------------------- ' RANDOM COM REGISTROS DE UM BD SEM REPETIÇÃO ' Autor: Márcio J. Lima (Guardião)' Existe alterações nesta FUNÇÃO, by Pacola' Data de criação: 22-08-2002 - SP / Brasil '-------------------------------------------------------------- Conta = "SELECT COUNT(id) AS total FROM tabtudo" 'aqui vem a select countSet Ls = strConexao.Execute(Conta)totalNumber = Ls("total")' Gravamos o Recordset em um Array Bidimensional Set strRS = Server.CreateObject("ADODB.RecordSet") strRS.Open "SELECT FROM tabtudo", strConexao, 3, 3 ' outra selectarySub = strRS.getRows() ' Fechamos a conexão pois não usaremos mais strRS.Close Set strRS = Nothing strConexao.Close Set strConexao = Nothing Dim TotalReg, TotalNum, vran, x, encontrou, arrGerados(0) Dim Numreg, verGerado, var_arrGerados, xLoop Function GeraRegistros(TotalNum) TotalReg=Cint(uBound(arySub,2)) ' Encontramos o Maior Array Gerado vran = 1 For x = 0 To TotalNum-1 ' LOOP de 1 p/ Total solicitado encontrou = 1 Randomize() ' Geramos o primeiro Random NumReg = Cint((rndTotalReg)) verGerado = Split(var_arrGerados,",") ' Verifica se nº gerado For xLoop = LBound(verGerado) To UBound(verGerado) IF Trim(verGerado(xLoop)) = Trim(NumReg) Then 'Este "response" comentado abaixo, indica qual número se repetiram 'E não armazena no Array único, fazendo gerando um novo Random 'response.write "<b>[ "& verGerado(xLoop) &","& NumReg &" ]</b><br> " x = x - 1 encontrou = 2 Exit For End IF Next IF encontrou = 1 Then ' NÃO ENCONTROU, gera o próximo número IF vran = 1 Then ' primeiro (Verificar este trecho) arrGerados(0) = NumReg vran = 2 Else arrGerados(0) = arrGerados(0) &","& NumReg End IF var_arrGerados = Join(arrGerados) End IF Next GeraRegistros = var_arrGerados End Function ' Array????? gerado, podemos iniciar a formatação de perguntas number = GeraRegistros(totalNumber) verNum = Split(number, ",") 'aqui vamos imprimiry = 0For x = LBound(verNum) to UBound(verNum) response.write arySub(0,verNum(x))y = y + 1Next%>
amigo ja usei isto tb, alias ja fiz tudo que eu sabia e nada.... mas valeu cara...