موصى به: يرجى ملاحظة! هجمات السيناريو الشائعة ASP وتقنيات الوقاية نظرًا للراحة وسهولة استخدام ASP ، فإن المزيد من برامج خلفية الموقع الإلكتروني تستخدم لغة البرمجة النصية ASP. ومع ذلك ، نظرًا لأن ASP نفسه لديه بعض نقاط الضعف الأمنية ، فإنه سيوفر للمتسللين فرصة للاستفادة منها إذا لم تكن حذرة. في الواقع ، ليس الأمان مسألة إدارة الشبكة فحسب ، بل يجب أن يكون المبرمجون أيضًا في بعض الأمان.
عندما نستخدم مكونات ASP المدمجة في ASP لبرمجة قاعدة البيانات ، نفتح عادة اتصال في بداية البرنامج النصي وإغلاقه في نهاية البرنامج النصي ، ولكن بالنسبة للبرامج النصية الكبيرة ، يكون الاتصال مفتوحًا لفترة أطول في معظم الحالات مما يجب فتحه. لذلك ، من أجل توفير موارد الخادم ، يجب إغلاق الاتصال قدر الإمكان لتحرير الموارد التي يشغلها الاتصال. تسمى هذه التقنية لإغلاق اتصال مجموعة السجلات دون إغلاق مجموعة السجلات مجموعة السجلات غير المتصل ، ويسمى مجموعة السجل نفسها مجموعة السجلات المنفصلة.
دعنا نستخدم مثالًا لتوضيح استخدام هذه التقنية (NorthWind.mdb عبارة عن قاعدة بيانات تأتي مع Microsoft Access97 ، ويمكن العثور على ملف Adovbs.inc في ملفات C:/ملفات/ملفات مشتركة/تعليمية):
| ما يلي هو المحتوى المقتبس: < ٪ language = vbscript ٪ > <!-#تضمين ملف = adovbs.inc-> < ٪ استجابة. expires = 0 Dim CNN ، Objrs ، Strout ، Strq ، Strc strc = driver = {microsoft access driver (*.mdb)} ؛ dbq = & server.mappath ( /asp24) & /northwind.mdb ؛ قم بالاتصال تعيين cnn = server.createBject (adodb.connection) CNN.Open Strc "إنشاء كائن مجموعة السجلات تعيين OBJRS = server.createBject (ADODB.RecordSet) objrs.cursorlocation = aduseclient objrs.cursortype = endiNStatic objrs.locktype = adlockoptimist strq = حدد معرف الشحن ، اسم الشركة ، الهاتف من شاحنة objrs.open strq ، cnn ، ، adcmdtext تعيين OBJRs.ActiveConnection = لا شيء cnn.close 'أغلق الاتصال تعيين CNN = لا شيء استجابة. write < html >< body > ما يلي يستخدم مجموعة السجلات غير المتصل افعلها (وليس objrs.eof) strout = objrs (معرف الشحن) و ، و OBJRS (اسم الشركة) و ، و OBJRS reponse.write server.htmlencode (strout) & <br> objrs.movenext حلقة استجابة. write <br> استعد لإضافة أو إدراج السجلات: إذا كنت بحاجة إلى تحديث قاعدة البيانات ، فأنت بحاجة إلى إعادة إنشاء الاتصال تعيين cnn = server.createBject (adodb.connection) CNN.Open Strc تعيين objrs.activeConnection = cnn objrs.filter = اسم الشركة = 'Wu Feng' إذا كان objrs.eof ثم objrs.addnew OBJRS (اسم الشركة) = وو فنغ OBJRS (Tel) = 571-7227298 objrs.update استجابة. اكتب إذا كان السجل الذي يلبي هذا الشرط غير موجود ، فسيتم إضافته. <br> آخر OBJRS (Tel) = 571-7227071 reponse.write إذا كان السجل الذي يلبي هذا الشرط موجودًا ، ثم تحديث. <br> objrs.update إنهاء إذا تعيين OBJRs.ActiveConnection = لا شيء cnn.close تعيين CNN = لا شيء objrs.close تعيين objrs = لا شيء استجابة. write </body ></html > ٪ > |
مشاركة: نصيحة ASP مثال: استخدم ASP لتسجيل عدد المستخدمين عبر الإنترنت عدد زيارات الإنترنت هو مشكلة مقلقة للغاية لكل مستخدم من مستخدمي الإنترنت الذي يبني موقع ويب. كيف تعرف عدد الأشخاص الذين يزورون موقع الويب الخاص بك؟ كيف تسجل عدد الزيارات كل يوم؟ هنا حل. عندما يبدأ المستخدم في الوصول إلى موقع الويب ، فإن GL على جانب الخادم