السلام عليكم إخواني أريد المساعدة
فيما يخص USER ادخل الحروف كبيرة او صغيرة يقبلها
اريد أن يفرق بين الحروف الكبيرة و الصغيرة
اريده ألا يقبل الكلمة الا كما كتبت
و شكرا إخواني
(30-07-21, 11:42 PM)hammadi كتب : [ -> ]السلام عليكم إخواني أريد المساعدة
فيما يخص USER ادخل الحروف كبيرة او صغيرة يقبلها
اريد أن يفرق بين الحروف الكبيرة و الصغيرة
اريده ألا يقبل الكلمة الا كما كتبت
و شكرا إخواني
و عليكم السلام و رحمة الله
اذا كانت الكلمة تكتب الا بحروف كبيرة فقط او صغيرة فقط
تفضل هذا الكود الذي فيه حروف كبيرة و صغيرة و انت احذف منه ما تريد حسب رغبتك
PHP كود :
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
Dim allowedChars As String = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz,. "
If allowedChars.IndexOf(e.KeyChar) = -1 Then
If Not e.KeyChar = Chr(Keys.Back) Then
e.Handled = True
Beep()
End If
End If
End Sub
السلام عليكم ربما لم اعرف ان اشرح
فانا سجلت في الداتا ahmed
و عندما اكتب AHMED يقبلها و كذلك يقبل ahmed ; يقبل Ahmed
فانا اريده الا يقبل الا ahmed كما هو مكتوب في الداتا
و كذل كلمة المرور يقبل الحروف الكبيرة و الصغيرة و لايبالي بما هو مكتوب
في الداتا
(31-07-21, 10:45 AM)hammadi كتب : [ -> ]السلام عليكم ربما لم اعرف ان اشرح
فانا سجلت في الداتا ahmed
و عندما اكتب AHMED يقبلها و كذلك يقبل ahmed ; يقبل Ahmed
فانا اريده الا يقبل الا ahmed كما هو مكتوب في الداتا
و كذل كلمة المرور يقبل الحروف الكبيرة و الصغيرة و لايبالي بما هو مكتوب
في الداتا
ضع الاستعلام الذي تستخدمه
السلام عليكم ربما لم اعرف ان اشرح
فانا سجلت في الداتا ahmed
و عندما اكتب AHMED يقبلها و كذلك يقبل ahmed ; يقبل Ahmed
فانا اريده الا يقبل الا ahmed كما هو مكتوب في الداتا
و كذل كلمة المرور يقبل الحروف الكبيرة و الصغيرة و لايبالي بما هو مكتوب
في الداتا
Imports System.Data.OleDb
Public Class Form1
Public con As New OleDbConnection("provider=microsoft.jet.oledb.4.0; data source = " & Application.StartupPath & "\Database.mdb")
Public da As OleDbDataAdapter
Public dt As DataTable
Dim SQLstr As String = "SELECT * FROM Login"
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
If TextBox1.Text = Nothing And TextBox2.Text <> Nothing Then
MsgBox("يجب عليك إدخال إسم المستخدم", MsgBoxStyle.Information, "تنبيه")
TextBox1.Focus()
End If
If TextBox2.Text = Nothing And TextBox1.Text <> Nothing Then
MsgBox("يجب عليك إدخال كلمة المرور", MsgBoxStyle.Information, "تنبيه")
TextBox2.Focus()
End If
If TextBox1.Text = Nothing And TextBox2.Text = Nothing Then
MsgBox("يجب عليك إدخال إسم المستخدم و كلمة المرور", MsgBoxStyle.Information, "تنبيه")
TextBox1.Focus()
End If
If con.State = ConnectionState.Closed Then con.Open()
Using Cmd As New OleDbCommand(Nothing, con)
Cmd.CommandText = "SELECT COUNT(*) From Login Where Username = '" & TextBox1.Text & "' and Pass = '" & TextBox2.Text & "'"
Me.Label1.Text = Cmd.ExecuteScalar
Cmd.CommandText = "SELECT * From Login Where Username = '" & TextBox1.Text & "' and Pass = '" & TextBox2.Text & "'"
Home.Label1.Text = Cmd.ExecuteScalar
End Using
If Val(Me.Label1.Text) = 0 And TextBox2.Text <> Nothing And TextBox1.Text <> Nothing Then
MsgBox("اسم المستخدم أو كلمة المرور خطأ", MsgBoxStyle.Information, "تنبيه")
Me.BackColor = Color.Red
End If
If Val(Me.Label1.Text) > 0 Then
Home.Show()
Me.Close()
End If
End Sub
السلام عليكم ورحمة الله وبركاته
اخي الكريم
عملية التحقق من كلمة المرور والتحسس لحالة الاحرف تتم عبر كل حرف من اسم المستخدم ان كانت كبيرة او صغيرة
ولتنفيذ هذه المهمة يجب المرور على كل حرف من الكلمة المكتوبة ومقارنتها مع الكلمة المخزنة
قمت بعمل هذا المثال وهو فنكشن يرجع ترو او فولس
اما كود الدخول الى البرنامج فالامر راجع لك حيث ستجلب اولا الاسم المخزن بدون التحقق من حالة الحرف ثم بعدها سنضيف كود عمل المقارنة لحالة الاحرف مع الاسم المدخل فإن لم يتحقق الامر لن نسمح بالدخول
اي اصبح الكود مركب
شكرا أخي
إنه يعمل فقط على الحروف و إذا أضفت شيء اخر فلا يعرفه
السلام عليكم ورحمة الله وبركاته
اخي الكريم
تفضل هذا التعديل على الفنكشن
كود :
Public Function DetectCase() As Boolean
If TextBox1.Text = MyName Then
Return True
End If
Dim UserN1 As Char() = TextBox1.Text.Trim().ToCharArray()
Dim UserN As Char() = MyName.ToCharArray()
Dim detc As Boolean = True
' التحقق من طول المصفوفتين
If UserN1.Length <> UserN.Length Then
Return False
Exit Function
Else
For i As Integer = 0 To UserN1.Length - 1
' فحص كل حرف من المصفوفة الاولى مع الحرف المساوي من المصفوفة الثانية ان كان يساويه في حالة الحرف
If Char.IsLower(UserN1(i)) = True And Char.IsLower(UserN(i)) = True Or Char.IsUpper(UserN1(i)) = True And Char.IsUpper(UserN(i)) = True Then
detc = True
' اذا كان هناك فراغ
ElseIf Char.IsWhiteSpace(UserN1(i)) = True And Char.IsWhiteSpace(UserN(i)) = True Then
detc = True
' التحقق من وجود ارقام
ElseIf Char.IsNumber(UserN1(i)) = True And Char.IsNumber(UserN(i)) = True Then
detc = True
Else
' اذا لم يتحقق الشرط ستكون القيمة فولص
detc = False
Exit For
End If
Next
End If
Return detc
End Function
شكرا أخي لقد عملت الحروف و الارقام
بقيت لي الرموز و شكرا أخي على المجهود
الحمد لله والشكر لله
ولك اخي الكريم
بالنسبة للرموز يجب ان لاتحتوي كلمات السر او الاسماء على رموز (رأي شخصي)