Indice del forum Olimpo Informatico
I Forum di Zeus News
Leggi la newsletter gratuita - Attiva il Menu compatto
 
 FAQFAQ   CercaCerca   Lista utentiLista utenti   GruppiGruppi   RegistratiRegistrati 
 ProfiloProfilo   Messaggi privatiMessaggi privati   Log inLog in 

    Newsletter RSS Facebook Twitter Contatti Ricerca
Un numero casuale
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet
Precedente :: Successivo  
Autore Messaggio
Pier
Dio minore
Dio minore


Registrato: 19/12/05 19:45
Messaggi: 660
Residenza: Sotto il tuo stesso cielo

MessaggioInviato: 28 Lug 2006 09:34    Oggetto: Un numero casuale Rispondi citando

Ciao a tutti...vi illustro il mio problema.
Ho un db in Access in cui una tabella contiene url di determinate immagini (banner).
All'inizio dovevo pescare un banner a caso da questa tabella quindi avevo creato un randomizzazione per estrarre un numero casuale tra gli id del banner e la cosa funzionava.
Ora il mio cliente vuole poter gestire anche la pubblicazione dei banner, quindi stabilire quali banner far apparire e quali no..quindi nella tabella del db c'è un campo in più (si/no).
Ora, come faccio io, in ASP, a prendere tutti i record del database in cui il campo si/no sia spuntato e quindi, tra questi e solo tra questi, estrarne uno a caso?

Spero di essere stato chiaro Rolling Eyes
Top
Profilo Invia messaggio privato HomePage MSN
horus
Macchinista
Macchinista


Registrato: 22/03/05 10:48
Messaggi: 2554
Residenza: Sirio e dintorni

MessaggioInviato: 28 Lug 2006 11:15    Oggetto: Rispondi citando

In una query su db access i campi si/no possono essere testati con la condizione:
Codice:
nome_campo=True
Top
Profilo Invia messaggio privato
tas
Eroe in grazia degli dei
Eroe in grazia degli dei


Registrato: 03/10/05 09:59
Messaggi: 166
Residenza: Profondo nord

MessaggioInviato: 31 Lug 2006 09:41    Oggetto: Rispondi

Fai la query come suggerisce Horus, cioè una roba tipo:

Codice:
SELECT ... FROM ... WHERE MostraBanner = True


Poi carica in un array a gli ID dei record risultanti dalla query, genera un numero casuale r e prendi l'ID contenuto nell'array con indice r, una roba tipo questa:

Codice:
Dim r, a, i, rs, sql

'apre il recordset
sql = "SELECT ..."
Set rs = Server.CreateObject("ADODB.Recordset")
rs.Open sql, cn, 1, 3, adCmdText

'ridimensiona l'array
Redim a(rs.RecordCount)

'loop sui record
i = 0
Do Until rs.EOF
    a(i) = rs("ID")
    i = i + 1
    rs.MoveNext
Loop
rs.MoveFirst

'numero casuale compreso tra 0 e rs.RecordCount - 1
Randomize
r = Int(rs.RecordCount * Rnd)

'posizionamento sul record di indice r
rs.Find "ID = " & a(r)

'qui scrivi il codice per generare l'output HTML
...

'chiusura oggetti
rs.Close
Set rs = Nothing


Non l'ho provato ma in linea di massima dovrebbe andare, ciao
Top
Profilo Invia messaggio privato HomePage
Mostra prima i messaggi di:   
Nuovo argomento   Rispondi    Indice del forum -> Linguaggi per Internet Tutti i fusi orari sono GMT + 2 ore
Pagina 1 di 1

 
Vai a:  
Non puoi inserire nuovi argomenti
Non puoi rispondere a nessun argomento
Non puoi modificare i tuoi messaggi
Non puoi cancellare i tuoi messaggi
Non puoi votare nei sondaggi