PDA

View Full Version : [asp] Estrazione random tra 'n' valori diversi (sono entrata in crisi...)


utrecht
11-10-2007, 21:59
ciao a tutti,
la funzione che randomizza mi sta mettendo in crisi....

Di seguito vi riporto il risultato di una query che estrae una serie di record da una tabella (per la precisione tutti i banner che hanno il campo visibilità =1)
+------------+
id_banner
+------------+
2
6
7

A questo punto vorrei estrarre uno di questi a caso per visualizzarli su una pagina... il problema è che non posso usare la funzione rnd() perchè prende in esame un determinato range (in questo caso prenderebbe un numero casuale da 1 a 3) bensì devo estrarre un preciso id_banner tra "2","6","7".
Qualcuno riesce a darmi un'idea di come potrei fare?

Grazie mille per gli eventuali interventi :)

ciao ciao

marko.fatto
11-10-2007, 22:47
premesso che non conosco asp (quindi spero di non dire caxxate :D )

non ci sono gli array?

utrecht
11-10-2007, 22:51
premesso che non conosco asp (quindi spero di non dire caxxate :D )


ehmm... veramente nemmeno io sono espertissima :D

Cosa dovrei riuscire a fare?

grazie mille
ciao ciao

marko.fatto
11-10-2007, 22:54
metti ogni record in una posizione dell'array così puoi sfruttare il rnd()

EDIT: ad esempio

int record(2)
record(0) = 2
record(1) = 6
record(2) = 7

e usi il valore ritornato dalla funzione rnd come indice dell'array

cionci
12-10-2007, 07:57
La soluzione proposta da marko.fatto è corretta, ma visot che comunque dovresti scorrere il recordset per inizializzare il vettore tanto vale scorrerlo subito per trovare l'elemento giusto:

Dim randomValue = Int(Int(numberOfRecords -1) * Rnd())

For counter = 0 To randomValue
rs.MoveNext();
Next


marko.fatto: hai la firma irregolare le immagini superano sia la dimensione che la quantità prevista dal regolamento. Potresti modificarla ? Grazie ;)