Salve,
ho una lista di elementi che vorrei visualizzare in maniera random.
Esempio:
data questa lista
banner1
banner2
banner3
banner4
banner5
ad ogni apertura della pagina asp, la lista deve essere visualizzata in maniera random
banner4
banner1
banner3
banner2
banner5
ho trovato questo script in rete, ma non funziona mi da errore sulla riga "If InArray(RndArr, item) = FALSE Then"
__________________________________________________ _____
<% Function array_rand(MiaArray, Quanti)
' Verifico che MiaArray sia una array
' In caso contrario restituisco una array vuota ed esco
If IsArray(MiaArray) = False Then
array_rand = Array()
Exit Function
' Controllo che Quanti sia un numero
' In caso contrario restituisco una array vuota ed esco
ElseIf IsNumeric(Quanti) = False Then
array_rand = Array()
Exit Function
' Se Quanti è maggiore del numero di elementi della mia array imposto
' su 1 il numero di elementi da restituire
ElseIf CInt(Quanti) > (UBound(MiaArray) + 1) Then
Quanti = 1
End If
' Definisco un po' di variabili interne
Dim i, RndArr, item
i = 0
' Assegno alla nuova array (quella contenente i risultati random) il
' numero di elementi passati dalla funzione
ReDim RndArr(CInt(Quanti))
' Lancio il Randomize
Randomize Timer
' Faccio un ciclo fino al riempimento della nuova array
Do While NOT i = CInt(quanti)
' Estraggo un elemento a caso
item = MiaArray(Int(Rnd * (UBound(MiaArray) + 1)))
' Verifico che l'elemento non sia già presente nella nuova array
If InArray(RndArr, item) = FALSE Then
' Aggiungo alla nuova array ed incremento il contatore
RndArr(i) = item
i = i + 1
End If
Loop
' Restituisco la nuova array
array_rand = RndArr
End Function
Dim amici
amici = Array("Luca","Claudio","Max","Diego","Francesco"," Michele","Daniele")
' Creo una nuova array contenente 2 soli amici estratti a caso dalla precedente
' La nostra funzione array_rand richiede 2 parametri:
' 1) l'array su cui operare
' 2) Il numero di elementi da estrarre randomicamente
Dim newamici
newamici = array_rand(amici, 2)
%>
<%
for Each amici In newamici
Response.Write amici & "<br/>"
Next
%>