2011-01-16 11 views
-1

私は「Username」フィールドを配置してからログインしました このフィールドに入力された値(ユーザー名)を比較するコードを見つけました
私はユーザーと権限のテーブルを持っている(各ユーザー:結果としてAccess 2007でテーブルを使用するログインフォームを作成

は、私は何をすることはできませんが、既存のテーブル

説明に出願された「ユーザ名」に入力した値を接続されたメッセージを表示許可がある)
例:
レコード1:ユーザー名= 1、許可=通常
レコード2:私は、「ユーザー名」フィールド に入力された値を取り、それを比較するコードまたはマクロを書きたい

特別ユーザ名= 2、許可=この表にし、それは、例えば、適切なメッセージ

表示されます:メッセージ1ユーザーの書き込みがされる場合は
を:「ようこそ、正規ユーザー」
ユーザーの書き込み2は、メッセージがされる場合:「ちょっとそこ特別なユーザー "

重要なことはコードの上に、私は1または2でなく、許可を得てフィルタリングしたくないことを

これは私が最初の部分で使用しているコードは次のとおりです。

Private Sub B15_Click()  
    Username.SetFocus  
    If Username = "1" Then  
     MsgBox "Welcome regular user"  
     DoCmd.Close  
    Else  
     If Username = "2" Then 
      MsgBox "Hey there special user"  
     End If  
    End If  
End Sub 
+1

あなたは偽のセキュリティで何を達成していると思いますか?本当のセキュリティを使わないのはなぜですか?または実際のユーザーのアクセス制御のいくつかの形式ですか? –

+0

パスワード入力がない場合は、コンボボックスをテーブルにバインドして、そのようにログインさせることができます。 – Beth

答えて

0

あなたがにDLookupを使用することができますが、あなたが理解する必要がありますこれらのどれもがいかなる形態のセキュリティも提供しないことを意味する。

Private Sub B15_Click() 
    Dim sPermission As String 

    ''Not needed: Username.SetFocus 

    ''If username is text, you will need quotes: "Username='" & Username & "'" 
    sPermission = DLookUp("Permission", "UserTable", "Username=" & Username) 

    ''You should first check that something is returned in sPermission 

    MsgBox "Welcome " & sPermission & " user" 

    DoCmd.Close 

End Sub 
関連する問題