1. 程式人生 > >機房收費系統(三)——登入介面

機房收費系統(三)——登入介面

概述

機房收費系統其實和學生資訊管理系統差不多,難度麼有增加多少。關鍵在於需要我們在敲程式碼之前把思路搞清楚,程式碼並不是什麼大事。這裡我就採用了畫流程圖的形式,把要實現的功能都畫出來,然後進行程式碼的編輯。下面就來分享我的思路和部分程式碼。

流程圖

這裡寫圖片描述
這裡寫圖片描述

程式碼

Private Sub cmdOK_Click()
    Dim txtSQL As String
    Dim txtsql1 As String
    Dim txtsql2 As String

    Dim mrc As ADODB.Recordset                  '用來存放記錄集物件
Dim mrc1 As ADODB.Recordset Dim mrc2 As ADODB.Recordset Dim msgtext As String Dim msgtext1 As String Dim msgtext2 As String username = "" If Trim(txtUserName.Text = "") Then '判斷輸入使用者名稱是否為空 MsgBox "沒有這個使用者,請重新輸入!", vbExclamation + vbQuestion, "提示" txtUserName.SetFocus txtpassword.Text
= "" Exit Sub Else If Trim(txtpassword.Text = "") Then MsgBox "請輸入密碼!", vbOKOnly + vbExclamation, "提示" txtUserName.SetFocus txtpassword.Text = "" Exit Sub Else txtSQL = "select * from user_info where userID='" & txtUserName.Text & "'" Set mrc = ExecuteSQL(txtSQL, msgtext) '執行查詢語句
txtsql2 = "select * from worklog_info where userid ='" & txtUserName.Text & "'" Set mrc2 = ExecuteSQL(txtsql2, msgtext2) txtsql1 = "select * from onwork_info where userid='" & txtUserName.Text & "'" Set mrc1 = ExecuteSQL(txtsql1, msgtext1) If mrc.EOF Then ' MsgBox "無此使用者,請重新輸入!", vbOKOnly + vbExclamation, "提示" txtUserName.Text = "" txtUserName.SetFocus Exit Sub Else If mrc.Fields(0) = txtUserName.Text And mrc.Fields(1) = txtpassword.Text Then End If ok = True username = Trim(txtUserName.Text) If Trim(mrc.Fields(2)) = "管理員" Then Else If Trim(mrc.Fields(2)) = "操作員" Then frmMain.manager.Enabled = False Else frmMain.manager.Enabled = False frmMain.cmucz.Enabled = False End If End If End If If mrc1.EOF = False Then MsgBox "此使用者二次登陸", vbOKCancel + vbExclamation, "提示" mrc1.Delete mrc1.Update mrc1.Close Else mrc1.AddNew mrc1.Fields(0) = Trim(txtUserName) mrc1.Fields(1) = Trim(mrc.Fields(2)) mrc1.Fields(2) = Trim(Date) mrc1.Fields(3) = Time mrc1.Update mrc1.Close mrc2.AddNew '新增記錄到worklog_info表 mrc2.Fields(1) = Trim(txtUserName) mrc2.Fields(2) = Trim(mrc.Fields(2)) mrc2.Fields(3) = Trim(Date) mrc2.Fields(4) = Trim(Time) mrc2.Fields(7) = VBA.Environ("computername") mrc2.Fields(8) = True mrc2.Update mrc2.Close Me.Hide frmMain.Show micount = micount + 1 '登入限制?? If micount = 3 Then MsgBox "超過登入限制!", vbOKOnly + vbExclamation, "警告" End '退出 End If End If End If End If End Sub

總結

就整個登入介面來說比較麻煩的就是判斷使用者級別,學生資訊系統沒有這樣劃分。使用者級別的判斷需要明白的是:一般使用者的許可權最低,它不能檢視管理員和操作員的相關許可權;而管理員其次,管理員可以看一般使用者的許可權,沒有操作員的許可權;而權力最大的就是操作員。所以只要清楚這個了其他的就好判斷了。