Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    285

    Randomize e numeri casuali alfanumerici

    Utilizzando randomize genero in un mio sito un numero casuale di 7 cifre ma volendo ottenere una stringa random alfanumerica ho provato il seguente script di freeasp;

    <%
    caratteri = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    Randomize ' inizializza il generatore di numeri casuale
    Do Until len(password) = 10 ' qui imposti la lunghezza della password
    carattere = Int((37 Rnd) + 1) ' Genera un valore casuale compreso tra 0 e Z.
    password = password &amp; Mid(caratteri,carattere,1)
    Loop
    Response.Write ("La tua password è : " &amp; password &amp; "")
    %>

    purtroppo ricevo l'errore in questa riga:

    carattere = Int((37 Rnd) + 1)


    con la seguente descrizione:

    Previsto ')'
    carattere = Int((37 Rnd) + 1)


    sembra tutto ok, quel'è il problema?

  2. #2
    codice:
    carattere = Int((37*Rnd) + 1)
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  3. #3
    Utente di HTML.it L'avatar di zoccolo
    Registrato dal
    Jun 2004
    Messaggi
    430
    Proa a scrivere:

    <%
    caratteri = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    Randomize ' inizializza il generatore di numeri casuale
    Do Until len(password) = 10 ' qui imposti la lunghezza della password
    carattere = Int(Rnd(37) + 1) ' Genera un valore casuale compreso tra 0 e Z.
    password = password & Mid(caratteri,carattere,1)
    Loop
    Response.Write ("La tua password è : " & password & "")
    %>

    A me così non da più l'errore ma ti darà

    La tua password è:0000000000
    La vita è come una scatola di cioccolatini. Non sai mai quello che ti capita!

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    285

    Grazie

    Grazie! ora funziona.. ho aggiunto l'* come suggerito da Shagrat ed ora va.

    che strano che l'articolo non fosse corretto, ho fatto un semplice copia e incolla, non l'avevo ancora neanche modificato.



    Grazie ad entrambi,


    Ciao


  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    285
    rieccomi..

    ho notato che a volte capita che la stringa generata non sia sempre alfanumerica ma solo composta da caratteri. Come posso ovviare per renderla sempre alfanumerica?


    Grazie!

  6. #6
    in quel modo non puoi...proprio perchè è casuale e visto che ci sono + lettere che numeri...

    potresti dividerla in 2 o 3 parti che ne so... metti 3 numeri 5 lettere e 2 numeri semplicemente facendo fare in 3 pezzi la password
    Purtroppo bisogna imparare che il computer non sbaglia...fa solo quello che gli dici di fare

    www.netpolaris.it

  7. #7
    Utente di HTML.it
    Registrato dal
    Aug 2001
    Messaggi
    285
    Ok grazie.. m'inventerò qualcosa.

    ciao e grazie

  8. #8
    Mi collego a questa discussione ...cercavo proprio queo script per generare una stringa random....

    <%
    caratteri = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    Randomize ' inizializza il generatore di numeri casuale
    Do Until len(password) = 10 ' qui imposti la lunghezza della password
    carattere = Int((37 Rnd) + 1) ' Genera un valore casuale compreso tra 0 e Z.
    password = password & Mid(caratteri,carattere,1)
    Loop
    Response.Write ("La tua password è : " & password & "")
    %>


    io l'ho fatta di 20 , chiedo una cosa ....(forse anche molto stupida) ...io uso quella stringa per identificare utenti che si iscrivono...per cui mi serve che non ci siano doppioni....con quello script c'è 1 possibilità che venga creato 1 doppione?

    se così fosse devo controlare che la stringa non esista già uffa

  9. #9
    Originariamente inviato da -AA-


    se così fosse devo controlare che la stringa non esista già uffa
    beh è naturale che essendo random ed essendo composta da parecchi numeri la probabilità che vengano fuori due stringhe uguali è bassa...però esiste sempre, ragion per cui devi controllare che non sia già stata utilizzata


  10. #10
    Grazie santino83

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.