موصى به: 18 قاعدة أمان لقاعدة بيانات الوصول إلى ASP 18 قواعد الأمان لقاعدة بيانات ASP Access: 1. أولاً ، نحتاج إلى تصفية جميع المحتوى المقدم من العملاء ، بما في ذلك؟ id = n ، وكذلك بناء جملة تشغيل ملف ASP من قاعدة بيانات العملية في رمز HTML المقترّم. يمكنك الهروب من الأحرف المقدمة ثم حفظها في قاعدة البيانات. 2. ثم تحتاج إلى تفويض الصفحة التي تصل إلى قاعدة بيانات الوصول
اتصال قاعدة البيانات:
<٪
تعيين conn = server.createBject (adodb.connection)
CONN.OPEN DRIVER = {Microsoft Access Driver (*.mdb)} ؛ dbq = & server.mappath (اسم قاعدة البيانات)
٪>
افتح قاعدة البيانات:
exec = حدد * من جدول قاعدة البيانات
تعيين rs = server.createBject (adodb.recordset)
Rs.Open Exec ، Conn ، 1،1
تتم قراءة المعلمة 1 ، 1
قراءة تنسيق المحتوى: <٪ = RS (الحقل) ٪>
أضف معالج السجل:
<٪
تعيين conn = server.createBject (adodb.connection)
CONN.OPEN DRIVER = {Microsoft Access Driver (*.mdb)} ؛ dbq = & server.mappath (اسم قاعدة البيانات)
name = request.form (الحقل) الاسم ، هاتف ، الرسالة هي قيمة الحقل المحددة بواسطة نموذج إرسال
tel = request.form (حقل)
رسالة = request.form (حقل)
exec = insert في قيم اسم الجدول (الحقل) ('؛ الحقل' ؛) متعددة مفصولة بفواصل
conn.execute exec يخضع باستخدام التنفيذ
conn.close
تعيين conn = لا شيء
٪>
معالج البحث:
<٪
name = request.form (الحقل) الاسم ، TEL هي قيمة الحقل المحددة بواسطة نموذج إرسال
tel = request.form (حقل)
تعيين conn = server.createBject (adodb.connection)
CONN.OPEN DRIVER = {Microsoft Access Driver (*.mdb)} ؛ dbq = & server.mappath (اسم قاعدة البيانات)
exec = حدد * من الجدول حيث name = '؛ مجال'؛ و Tel = الحقل
تعيين rs = server.createBject (adodb.recordset)
Rs.Open Exec ، Conn ، 1،1
٪>
'؛ يتم تصدير المحتوى الذي تم تفتيشه على الصفحة
<٪
افعل بينما لا rs.eof
٪> <tr>
<td> <٪ = rs (name) ٪> </td>
<td> <٪ = rs (tel) ٪> </td>
<td> <٪ = rs (time) ٪> </td>
</r>
<٪
Rs.Movenext
حلقة
٪>
حذف معالج السجل:
<٪
تعيين conn = server.createBject (adodb.connection)
CONN.OPEN DRIVER = {Microsoft Access Driver (*.mdb)} ؛ dbq = & server.mappath (اسم قاعدة البيانات)
exec = حذف * من اسم الجدول حيث الرقم = & request.form (id)
conn.execute exec
٪>
تعديل معالج السجل:
<٪
تعيين conn = server.createBject (adodb.connection)
CONN.OPEN DRIVER = {Microsoft Access Driver (*.mdb)} ؛ dbq = & server.mappath (اسم قاعدة البيانات)
exec = حدد * من اسم الجدول حيث الرقم = & request.form (معرف)
تعيين rs = server.createBject (adodb.recordset)
Rs.Open Exec ، Conn ، 1،3 '؛ 1،3 يعني التعديل
rs (name) = request.form (field) '؛ name ، tel ، الرسالة هي قيمة الحقل المحددة عن طريق إرسال النموذج
rs (tel) = request.form (حقل)
RS (رسالة) = request.form (حقل)
Rs.update
Rs.close
تعيين روبية = لا شيء
conn.close
تعيين conn = لا شيء
٪>
تعديل برنامج تنفيذ السجل: أدخل صفحة رقم المعرف >>> تصدير بيانات المعرف المقابل >>>>>>> قم بتعديل المعالج مباشرة
مثال معالج تسجيل الدخول إلى الخلفية:
<٪
الاسم الخافت ، كلمة المرور
name = request.form (اسم)
كلمة المرور = الطلب. الشكل (كلمة المرور)
خافت Exec ، Conn ، Rs
exec = حدد *من اسم الجدول حيث (name = '؛ & field &' ؛ و password = '؛
تعيين conn = server.createBject (adodb.connection)
CONN.OPEN DRIVER = {Microsoft Access Driver (*.mdb)} ؛ dbq = & server.mappath (اسم قاعدة البيانات)
تعيين rs = server.createBject (adodb.recordset)
Rs.Open Exec ، Conn
إذا لم يكن rs.eof ثم
Rs.close
conn.close
جلسة (محددة) = نعم
جلسة (تحقق) = الحق
استجابة. index.asp
آخر
جلسة (محددة) = لا
جلسة (تحقق) = خطأ
استجابة. redirect تسجيل الدخول
إنهاء إذا
٪>
كل صفحة خلفية زائد:
<٪ إذا لم تكن الجلسة (محددة) = نعم ثم '؛ تحدد الجلسة متغير سلسلة محدد
استجابة. redirect تسجيل الدخول
آخر
٪>
مشاركة: فئات موجهة نحو الكائنات في ASP من المخطط الآن لنظام الإبلاغ الذي قام به شخص ما من أجل الشركة إعادة تعديله وتحسينه. إنه يستخدم ASP. إذا كنت تستخدم الكائنات الموجهة ، فيجب أن يكون لديك فصول. لحسن الحظ ، تدعم VBS المراجع التالية: ٪ myclass dim var 'يجب أن تستخدم المتغيرات العامة dim private var2' الخاصة لا تتطلب استجابة فرعية sub1.