06-01-24, 02:04 AM
(آخر تعديل لهذه المشاركة : 06-01-24, 02:07 AM {2} بواسطة HALIM ELEULMA.)
يبدو أن الكود يقوم بالتحقق من وجود الرقم المُدخل في قاعدة البيانات قبل إدخاله، وإذا كان موجودًا، يُظهر رسالة تنبيه. الخطوة التالية هي إدخال البيانات في حالة عدم وجود الرقم.
ومن الجيد أنك تتحقق من الاتصال بقاعدة البيانات وتُغلقه بشكل صحيح. إليك تحسينات للكود
هذا الكود يقوم بإدخال البيانات إذا لم يتم العثور على الرقم في قاعدة البيانات،
وإلا فإنه يُظهر رسالة تنبيه. يستخدم الكود استعلامات معلماتية (parameterized queries)
للتعامل مع البيانات المدخلة،
مما يساهم في تفادي ثغرات الأمان مثل هجمات حقن SQL (SQL injection).
ولا تنسي الضغط علي شكر
ومن الجيد أنك تتحقق من الاتصال بقاعدة البيانات وتُغلقه بشكل صحيح. إليك تحسينات للكود
هذا الكود يقوم بإدخال البيانات إذا لم يتم العثور على الرقم في قاعدة البيانات،
وإلا فإنه يُظهر رسالة تنبيه. يستخدم الكود استعلامات معلماتية (parameterized queries)
للتعامل مع البيانات المدخلة،
مما يساهم في تفادي ثغرات الأمان مثل هجمات حقن SQL (SQL injection).
PHP كود :
If connAccess2005.State = ConnectionState.Closed Then connAccess2005.Open()
Try
Dim cmd As New OleDbCommand("SELECT COUNT([idr]) FROM [tan] WHERE [idr]=?", connAccess2005)
cmd.Parameters.AddWithValue("@idr", Val(txtidr.Text))
Dim count As Integer = Convert.ToInt32(cmd.ExecuteScalar())
If count > 0 Then
MsgBox("رقم الهوية مضاف مسبقا!", MsgBoxStyle.Exclamation, "تنبية!")
Return
End If
Dim cmdinsert As New OleDbCommand("INSERT INTO tan (idr, idt) VALUES (?, ?)", connAccess2005)
cmdinsert.Parameters.AddWithValue("@idr", txtidr.Text)
cmdinsert.Parameters.AddWithValue("@idt", txtidt.Text)
cmdinsert.ExecuteNonQuery()
MsgBox("تم حفظ البيانات بنجاح")
Catch ex As Exception
MsgBox(ex.Message.ToString())
Finally
connAccess2005.Close()
End Try
ولا تنسي الضغط علي شكر
