Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 20
  1. #1
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400

    Controllo corrispondenza numeri

    Cioa, ho questo codice con cui genero un numero casuale da inserire in campo di un form:
    codice:
    <%
    	Dim ImageNo, RndNum, i 
    
    	Randomize Timer 
    	ImageNo = CStr(Fix(99999 * Rnd)) 
    	Session("ImageNo") = ImageNo 
    	For i = 1 To Len(ImageNo)
    
    	RndNum = 99999 * Rnd 
    	Response.Write "[img][/img]"
    
    	Next
    	%>
    Come posso fare per controllare che il numero inserito nel campo del form sia corrispondente al numero generato causalmente dallo script???

  2. #2
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Ma è possibile, oltre ad avere il numero casuale come una sequenza di immagini jpg, anche come numero normale:

    Numero generato com immagini: http://www32.websamba.com/wegawhite/testdemoform.asp

    Numero cifre normali:
    Lo stesso numero generato con immagini, ma con cifre normali.

  3. #3
    usi una codifica MD5 per esempio

    fai un campo nel form che si chiama CODEMD5

    e ci metti l'MD5 del numero generato casualmente

    nella pagina di ricezione fai l'MD5 del numero inseito dall'utente e controlli la corrispondenza con l'MD5 che è arrivato dal campo del form

    se sono uguali l'utente ha messo lo stesso numero

    così eviti sistemi automatici...
    perchè da una codifica MD5 non si può risalire all'originale

    ---

    per la visualizzazione nel form del codice (in maniera che sistemi automatici non lo recuperirino) ci sono due vie

    1. un componente che genera un'immagine
    2. una procedura particolare che ho inventato che è relativamente sicura...

    poi te la passo.
    dammi fino a stasera
    ora sono un po' impegnato a reinstallare linux
    san imente saluta

    * http://simonecingano.it *

  4. #4
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Conosco l'MD5 (Message-Digest Algorithm) anche se non l'ho mai utilizzato e nonc apisco come posa aiutarmi nel mio caso.

    Il mio problema è il seguente:

    1) genero il numero casuale e lo stampo a video a lato di un campo del form chiamato "codice di attivazione" nel quale invito l'utente a ricopiare il numero casuale (stampato come immagine);

    2) devo controllare che quanto ricopiato dall'utente nel campo del form "codice di attivazione" sia esattamente corrispondente al numero generato casualmente;

    3) se c'è corrispondenza tra il numero inserito nel campo del form e quello casualmente generato, l'utente avvia la registrazione;

    4) se NON c'è corrispondenza tra il numero inserito nel campo del form e quello casualmente generato, l'utente rimane bloccato;

    Tutto qui.

  5. #5
    Modifica lo script salvandoti il numero in una variabile di sessione :

    <%
    Dim ImageNo, RndNum, i

    Randomize Timer
    ImageNo = CStr(Fix(99999 * Rnd))
    Session("ImageNo") = ImageNo
    For i = 1 To Len(ImageNo)

    RndNum = 99999 * Rnd
    session("random") = RndNum
    Response.Write "[img][/img]"

    Next
    %>

    poi controlli il numero inserito dall'utente confrontandolo con quello della variabile di sessione creata.

    ciao

  6. #6
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Grazie ma recupera due numeri diversi:
    codice:
    Response.Write ("[img][/img]")
    restituisce: 76124, mentre
    codice:
    session("random") = RndNum
    restituisce: 97161,4538937807

  7. #7
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Ho pubblicato lo script qui

    Spero che qualcuno possa indicarmi la soluzione più adatta.

    Grazie

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da wegawhite
    Ho pubblicato lo script qui

    Spero che qualcuno possa indicarmi la soluzione più adatta.

    Grazie
    Non so se è la soluzione + adatta sicuramente e la + veloce
    codice:
    <%
    Dim ImageNo, RndNum, i
    
    Randomize Timer
    RndNum = CStr(Fix(99999 * Rnd))
    For i = 1 To Len(rndnum)
    Next
    %> 
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Documento senza titolo</title>
    </head>
    
    <body>
    <input name="cod_control" type="text" value=" <%= RndNum %> " readonly="true">
    
    </body>
    </html>
    In pratica dal tuo script che genera numeri a random, invece che generare il numero con immagini (anche perchè non avendo lo script, non poteveo eseguire delle prove) stampo il numero in un campo text (formato readonly) cosi che sia inviabile dal form.
    A questo punto i controlli li puoi eseguire sia da client che da sever, o da entrambi.
    Speranao di esserti stato d'aiuto si saluto

    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    Utente di HTML.it L'avatar di wegawhite
    Registrato dal
    Aug 2004
    Messaggi
    1,400
    Grazie Andrea, ma avrei necessità che il codice random venga ricopiato direttamente dall'utente nel previsto campo del form.

  10. #10
    hia provato a prendere sola la parte intera del codice random?

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.