Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    263

    Immagini random con ASP

    Ciao a tutti.
    Dovrei visualizzare in modalità random ad ogni reload della pagina, delle immagini contenute in una directory (qui contenuta nella variabile percorsoPhoto).
    Il codice che utilizzo è il seguente (peraltro ve lo consiglio in quanto "dovrebbe" essere sufficiente caricare una nuova immagine nella directory per essere caricata casualmente):

    Dim objFSO, objFolderObject, objFileCollection, objFile
    Dim intFileNumberToUse, intFileLooper
    Dim objImageFileToUse
    Dim strImageSrcText
    Set objFSO = Server.CreateObject("Scripting.FileSystemObject")
    Set objFolderObject = objFSO.GetFolder(Server.MapPath(percorsoPhoto))
    Set objFSO = Nothing
    Set objFileCollection = objFolderObject.Files
    Set objFolderObject = Nothing
    seme=Rnd()
    intFileNumberToUse = Int(objFileCollection.Count * seme) + 1

    response.Write(intFileNumberToUse)
    response.Write(objFileCollection.Count)
    response.Write(seme)

    intFileLooper = 1
    For Each objFile in objFileCollection
    If intFileLooper = intFileNumberToUse Then
    Set objImageFileToUse = objFile
    Exit For
    End If
    intFileLooper = intFileLooper + 1
    Next
    Set objFileCollection = Nothing
    strImageSrcText = percorsoPhoto & objImageFileToUse.Name
    Set objImageFileToUse = Nothing
    %>
    <table >
    <tr>
    <td><div id="menuFoto">[img]<%=strImageSrcText%>[/img]</div>
    </td>
    </tr>
    </table>

    Nella directory ci sono 42 immagini.
    Il problema è che mi visualizza sempre la numero 30
    In effetti con la response.write(seme) visualizzo sempre lo stesso numero, quindi devo supporre che la funzione Rnd non mi funziona correttamente.

    Qualche suggerimento ?

    Grazie
    Marco

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    codice:
    Randomize(timer)
    seme = Rnd()
    Roby

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    263
    Perfetto !

    Grazie Roby

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 © 2025 vBulletin Solutions, Inc. All rights reserved.