Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    493

    frase random da database

    ciao a tutti
    in questo topic ho visto che forse è possibile ma non ho capito molto.
    vi spiego cosa vorrei fare.
    in un database di access ho delle frasi (in numero noto determinato e finito!!) che vorrei richiamare in maniera casuale
    ad esempio se ho 20 frasi ad ogni caricamento della pagina vorrei che i lcodice mi estrapolasse random una delle 20 frasi.
    come posso fare?
    grazie

  2. #2
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Conti il numero dei record.

    Generi un numero a caso N compreso tra 0 e il numero dei record

    Apri il recordset e ti sposti in avanti N volte.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    493
    ma come si genera? mi fai un esempio?
    posso mettere nemero=Rnd(20)?
    e poi faccio la query prelevando l'id=a numero?



    se il munero di frasi fosse variabile e non consequenziale? ad esempio ho n campi ma non 0 1 2 3....n ma 0 5 6 8 n è possibile?
    grazie

  4. #4
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Nel tuo DB hai una frase per ogni record?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    493
    si, ad ogni record una frase

    ho fatto una prova cosi

    codice:
    <%
    
    Dim numero
    numero=CInt(Rnd(20)*10)
    response.Write(numero)
    %>
    ma mi restituisce sempre 7 come si fa a far venire numeri casuali?
    ho provato a cambiare ip, browser e a mettere 800 come limite ma dà sempre e comunque 7
    grazie

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    493
    ok ci sono arrivato!

    e quando ci arrivi sembra tutto banale!!

    codice:
    Dim max
    max = 20
    Randomize()
    Response.Write CInt((max - 1)*Rnd() + 1 )
    se tuttavia poteste aiutarmi riguardo al caso se il limite non è noto ve ne sarei grati!
    grazie ciao ciao

  7. #7
    Ti hanno già aiutato dicendoti che devi contare i record nel database. Poi assegni il valore trovato a max.
    Se non sai come si contano i record, guarda quì

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    493
    ok però se cancello un record dopo se conto 35 record non ho più in successione nemeri da 1 a 35 perche se cancello il record 3 dopo ho 1,2,4 c'è una soluzione per non far uscire random il 3 oppure devo per forza aver i record numerati ordinatamente?
    grazie

  9. #9
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    Originariamente inviato da tretretre
    ok però se cancello un record dopo se conto 35 record non ho più in successione nemeri da 1 a 35 perche se cancello il record 3 dopo ho 1,2,4 c'è una soluzione per non far uscire random il 3 oppure devo per forza aver i record numerati ordinatamente?
    grazie

    Immagina i giocatori di una squadra di calcio schierati in piedi in fila sul campo. Se io estraggo un numero da 0 a 10, metti caso, il 3, e ti dico di partire dal primo a sinistra e di spostarti verso destra 3 volte e quindi di scegliere il quarto giocatore... che te frega di che numero ha scritto sulla maglietta?

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    493
    perfetto allora è realizzabile!
    e funziona! l'ho appena testato
    grazie mille anche per la chiarezza!
    ciao ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.