Operazioni sui record

di
Anonimizzato12339
il
1 risposte

Operazioni sui record

Ciao a tutti nel complimentarmi per la grande utilità del sito, volevo porvi una domanda sulla seguente problematica, premetto che sono agli inizi e avrei bisogno anche di qualche consiglio di cosa poter studiare per ampliare la conoscenza sull’argomento ed eventuali libri, ho provato a fare un piccolo programma di esempio, per cui ho creato una Tabella contenente il campo "Operatore" il campo "Password" e il solito automatico "ID", dopodiché ho creato una maschera, dove sono andato a inserire un campo elenco per selezionare ogni volta il contenuto della Tabella "Operatore" e un campo testo dove inserisco la password in modo manuale, il problema che non riesco a capire come fare a confrontare l’operatore e la password inseriti con i campi presenti nella Tabella per confrontarli e nel caso dare accesso al programma.

Ringrazio tutti coloro che vorranno aiutarmi.

1 Risposte

  • Re: Operazioni sui record

    Ci sono diveri metodi... e l'argomento aggiunge poi delle varianti concettuali, che tuttavia credo tu debba maturare con il tempo.

    A mio avviso servirebbe ad esempio anche un NomeUtente...
    Innanzitutto data la tua Tabella
    [T1]
    con i Campi
    [IDUtente] Counter
    [NomeUtente] Testo
    [Password] Testo

    Dovrai creare una maschera NON ASSOCIATA nella quale inserire 2 TextBox
    [txtNomeUtente]
    [txtPassword]
    ed un Button
    [cmdCheck]
    Nell'Evento Click del Button devi verificare se nella Tabella [T1] i dati corrispondenti ad User e PWD sono corenti...
    La verifica la puoi fare usando le funzioni di Aggregazione come DCOUNT e DLOOKUP che trovi ben documentate nell'Help con tanto di Esempi e spiegazioni, oppure aprendo un Recordset sulla Tabella e facendo una verifica diretta, questo secondo metodo è migliore in quanto più efficiente, ma più complesso e forse dovresti prendere più padronanza...
    
    Private Sub cmdCheck_Click()
       Dim iCount As Integer
       Dim strUser As String
       Dim strPwd As String
       strUser="[NomeUtente]='" & REPLACE(Me!txtNomeUtente.Value,"'","''")
       strPwd="[Password]='" & REPLACE(Me!txtPassword.Value,"'","''")
       iCount=Dcount("*","T1",strUser & " AND " & strPwd)
       If iCount>0 Then
          MsgBox "LOGIN CORRETTO"
       Else
          MsgBox "LOGIN ERRATO"
       End If
    End Sub
    Ora ci sarebbe da spiegarti perchè ho spezzato tutto in quel modo... che potrebbe sembrare non utile... ma chi sviluppa fa DEBUG e questo è il MODO CORRETTO per scrivere codice leggibile e debuggabile.

    Se poi hai voglia di approfondire e studiare il metodo più completo vedi questo DEMO:
    http://forum.masterdrive.it/access-79/login-sicurezza-form-44771/
Devi accedere o registrarti per scrivere nel forum
1 risposte