Ir para conteúdo

POWERED BY:

Arquivado

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

Igor Pereira

Selecionar Randomicamente

Recommended Posts

Olá pessoal não tenho nocao nenhuma em ASP.

 

Tenho uma pagina para fazer manutencao, onde a linguagem mostra por <iframe> em uma pagina interna o produto. abaixo está o codigo

 

<iframe src='bd/pousadaslisthome.asp?t=pousadas&z_ID=%3D&x_ID=&z_Aprovado=%3D&x_Aprovado=1&z_Nome_da_Pousada=LIKE&x_Nome_da_Pousada=&z_Destaque_Home=LIKE&x_Destaque_Home=1&z_Descricao=LIKE&x_Descricao=&z_Telefone=LIKE&x_Telefone=&z_zEmail=LIKE&x_zEmail=&z_Site=LIKE&x_Site=&z_Endereco=LIKE&x_Endereco=&z_Bairro=LIKE&x_Bairro=&z_Faixa_de_Preco=LIKE&x_Faixa_de_Preco=&z_Tipo_de_viagem=LIKE&x_Tipo_de_viagem=&z_Palavras2Dchave=LIKE&x_Palavras2Dchave=&z_Suites=LIKE&x_Suites=&z_Servicos=LIKE&x_Servicos=&z_Tarifas=LIKE&x_Tarifas=&Submit=Search+(*)' scrolling='No' frameborder='0' width='190' height='270' marginheight='0' marginwidth='0' allowtransparency="yes"></iframe>

eu quero que esse <iframe> mostre o produto randomicamente, pos são N produtos no BD. pois não tenho ideia de onde posso alterar. o codigo que esta no link <b>bd/pousadaslisthome.asp</b> parece ser gerado por algum programa gerador de site, ou seja, muito sujo.

 

QUERO Q SELECIONE OS PRODUTOS RANDOMICAMENTE

Set Rs = pousadas_list.LoadRecordset()
pousadas_list.lTotalRecs = Rs.RecordCount
pousadas_list.lStartRec = 1
If pousadas_list.lDisplayRecs <= 0 Then ' Display all records
	pousadas_list.lDisplayRecs = pousadas_list.lTotalRecs
End If
If Not (pousadas.ExportAll And pousadas.Export <> "") Then
	pousadas_list.SetUpStartRec() ' Set up start record position
End If
%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa o randomize ou use o RNS direto na string SQL

 

SQL = "select * from TABELA order by Rnd(Int(Now()*[iD])-Now()*[iD]);"

 

abaixo um code para dar um RANDOM COM REGISTROS DE UM BD SEM REPETIÇÃO

 

 

<

%

' Gravamos o Recordset em um Array Bidimensional

Set strRS = Server.CreateObject("ADODB.RecordSet")

strRS.Open "SELECT * FROM membros ", strConexao, 3, 3

arySub = 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((rnd*TotalReg))

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(3)



verNum = Split(number, ",")

For x = LBound(verNum) to UBound(verNum)

response.write arySub(0,verNum(x)) &"."

response.write arySub(1,verNum(x)) &"<br>"

Next

%>

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.