منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : هل هذا المثال هو الموصى به للحماية من الاختراق؟؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
دالة في موديول
كود :
Function isyes(ByVal us As String, ByVal pass As String) As Boolean
        If us = "admin" And pass = "admin2010" Then
            Return True
        Else
            Return False

        End If
    End Function

وكود ضمن زر امر
كود :
If isyes(TextBox1.Text, TextBox2.Text) Then
            MsgBox("welcome here my bb", MsgBoxStyle.Information, "")
        Else
            MsgBox("ERROR Sorry", MsgBoxStyle.Critical, "")
        End If

هل هذا هو المسمى الاجراءات المحزنة؟؟؟؟
وهل استعلمت بالدالة من جدول بقاعدة بيانات نفس الشي؟
اذا كنت تقصد عدم حدوث ما يسمى sql injection فالمقصود تمرير النص في جملة الاستعلام دون استخدام بارميترز
بارك الله فيك
كيف يمكن صياغة جملة الاستعلام باستخدام البارمترات؟ الاضافة والتعديل سهلة لكن الاستعلام عن اسم مستخدم وكلمة مرور شلون؟ كيف اعدل على الجملة هذي
كود :
dim sql as string = "select * from tb where tname='" & textbox1.text & "' and pass=" & val(textbox2.text) & ""
كيف اعدل عليها ...وشكرا مقدما
عدلت على الدالة لتكون هكذا
كود :
Function isyes(ByVal us As String, ByVal pass As String) As Boolean
        Dim cm As New OleDb.OleDbCommand("select * from tb where tname='" & us & "' and pass='" & pass & "'", con)
        If con.State = ConnectionState.Closed Then
            con.Open()
        End If
        Dim dr As Data.OleDb.OleDbDataReader = cm.ExecuteReader
        If dr.Read Then
            Return True
        Else
            Return False

        End If
    End Function
PHP كود :
Function isyes(ByVal us As StringByVal pass As String) As Boolean
        Dim cm 
As New OleDb.OleDbCommand("select * from tb where tname=@n and pass=@pass"con)
cm.parameters.add(@n,oledb.char).value=us
cm
.parameters.add(@pass,oledb.char).value=pass
        
If con.State ConnectionState.Closed Then
            con
.Open()
        
End If
        
Dim dr As Data.OleDb.OleDbDataReader cm.ExecuteReader
        
If dr.Read Then
            
Return True
        
Else
            Return 
False

        End 
If
    
End Function

ثم عند تسجيل الدخول تستدعى الدالة وتمرر لها مربعى نص اسم المستخدم وكلمة المرور 
[COLOR="#000080"]السلام عليكم ورحمه الله وبركاته
كيف الحال اخي سعود
تفضل التعديل
كود :
Function isyes(ByVal us As String, ByVal pass As String) As Boolean
        Dim cmd As New SqlCommand("select * from Users where UserName=@UserName and Password= @Password", con)
        Dim dr As SqlDataReader
        cmd.Parameters.Clear()
        cmd.Parameters.AddWithValue("@UserName", us)
        cmd.Parameters.AddWithValue("@Password", pass)
        If con.State = ConnectionState.Closed Then con.Open()
        dr = cmd.ExecuteReader
        If dr.Read Then
            dr.Close()
            Return True
        Else
            dr.Close()
            Return False
        End If
End Function


الاستدعاء
كود :
MsgBox(isyes(TextBox1.Text, TextBox2.Text))

بالتوفيق

[/COLOR]
أعتذر عن التأخير و شكرا لأخواني الذين سبقوني

PHP كود :
Private Sub OK_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles OK.Click
        
Try
            
With cmnd
                
.Connection conn
                
.CommandType CommandType.Text
                
.CommandText "select * from users where uname = @uname and pword = @pword"
                
With .Parameters
                    
.Clear()
                    .
AddWithValue("@uname"OleDbType.VarChar).Value tb_user.Text.Trim
                    
.AddWithValue("@pword"OleDbType.VarChar).Value tb_pword.Text.Trim
                End With
                
If conn.State ConnectionState.Open Then conn.Close()
                
conn.Open()
                
redr cmnd.ExecuteReader
                
If redr.Read Then
                    redr
.Close()
                    
MsgBox("Done")
                    
Form1.Show()
                Else
                    
MsgBox("Wrong Username Or Password")
                    
redr.Close()
                
End If
                
conn.Close()
            
End With
        
Catch ex As Exception
            MsgBox
(ex.Message)
        
End Try
    
End Sub 
بارك الله فيكم جميعا اخواني
الان عرفت الطريقة والحمدلله.
لم اكن اتصور انها هكذا؟