في برنامج VB النصي، لا يتعين عليك تعريف المتغيرات أو تحديد أنواعها بشكل صريح كما هو الحال في لغات البرمجة النصية الأخرى. يوجد متغير في المرة الأولى التي تستخدمه فيها. ومع ذلك، فإن هذه الميزة تجعل التعليمات البرمجية الخاصة بك متاحة على نطاق واسع في الكتابة المطبوعة. إذا قمت بتعريف اسم متغير بشكل غير صحيح في التعليمات البرمجية الخاصة بك، فسيتم إنشاء متغير جديد. قد لا يعمل البرنامج النصي الخاص بك بشكل صحيح، وقد لا تكون على علم بالخطأ.
%<%Dim IntUserID%>%
IntUserID متاح الآن. للحصول على شبكة أمان أخرى، استخدم Option Explicit. إذا قمت بتشغيل Option Explicit، فسوف تصدر إشارة خطأ في أي وقت تستخدم فيه متغيرًا. قد يبدو هذا مملاً، لكنه يمكن أن يوفر لك بعض الأدلة عند حدوث خطأ في البرنامج النصي الخاص بك، وإلا فسيتعين عليك العمل بجد لمعرفة مكان الخطأ.
لاستخدام Option Explicit، ضع ما يلي كسطر أول من البرنامج النصي الخاص بك:
<% Option Explicit %>
إذا كنت تريد معرفة ما يحدث عندما تنسى تعريف متغير، فيمكنك تشغيل هذا الرمز:
<% Option Explicit %>
<:% strName = Request.Form("Name") %>
نظرًا لعدم تعريف متغير strName (Dim strName)، ستلاحظ حدوث الأخطاء التالية:
خطأ وقت تشغيل Microsoft VBScript '800a01f4'
المتغير غير محدد: "strName"
/e/oe-test.asp، السطر 10
يستخدم Len
يمكنك استخدام الدالة Len(string) لتحديد طول السلسلة النصية:
<%
IntString = "هذه جملة بسيطة."
IntStringLength = لين (IntString)
Response.اكتب "هناك أحرف " & IntStringLength & " (بما في ذلك المسافات) في الجملة الموضحة أدناه:"
الاستجابة.اكتب "" & IntString & ""
%>
إذا كنت تتساءل عن كيفية عمل Len يدويًا، ففكر في النموذج الذي تطلب فيه من المستخدمين إدخال الرمز المكون من خمسة أرقام أو رقم التعريف الشخصي المكون من ثلاثة أرقام. باستخدام Len، يمكنك التحقق من أنك قمت بإدخال أرقام كافية.
استخدم تريم
إن تشذيب الأوتار هو شيء تريد الحصول عليه بشكل صحيح في البداية. في كثير من الأحيان، تحتوي السلسلة على مسافة إضافية في البداية أو النهاية، وإذا لم تقم بموازنتها، فقد تقلق بشأن إضاعة الوقت في تلك المتغيرات.
<% strName = Request.Form("الاسم")
strCheckName = "ايمي كوين"
إذا strName = strCheckName ثم
الرد.اكتب "نجاح! الأسماء متطابقة."
آخر
Response.اكتب "عذرًا، الأسماء غير متطابقة."
انتهي إذا
%>
إذا كانت قيمة strName هي "Amy Cowen"، لأن هذه هي الطريقة التي أدخلها بها في مربع النموذج، ثم اختبر ما إذا كان المتغيران متماثلين، فهي ليست كذلك، لأن "Amy Cowen" ليست "Amy Cowen" ."
وبالمثل، إذا قمت بإدخال الاسم في عنوان URL:
<% Response.Write " & objRec("Name") & "">Your Site" %>
إذا كان أي جزء من السجل في الاسم يحتوي على مساحة إضافية، فسيتم تشغيله بسرعة في سؤال الأخطاء.
يمكنك تعديل سلسلة كاملة من العمليات لتنفيذها على اليسار أو اليمين:
<% strComments = Request.Form("Comments")
strComments = تقليم(strComments)
%>
افترض أن المستخدم قد أدخل:
"أواجه مشكلات في تثبيت البرنامج الذي قمت بتنزيله."
سيؤدي بيان القطع أعلاه إلى تقسيم المساحة الإضافية، ولم يتبق سوى المحتوى التالي:
"أواجه مشكلات في تثبيت البرنامج الذي قمت بتنزيله." "
الآن، عد إلى مثال "Amy Cowen"، إذا أضفت النص التالي، فسننجح:
strName = Trim(strName)
للقص على اليمين، استخدم Rtrim(string). للقص على اليسار، استخدم Ltrim( string ).Conversion
عندما تبدأ في استخدام لغة مشابهة لـ VB، سوف ترتكب بعض الأخطاء البسيطة، مثل مقارنة العدد الصحيح 512 بالسلسلة 512. إذا أدركت أن الـ 512 السابقة والـ 512 التالية مختلفتان، فيمكنك التفكير في سبب عدم عمل البرنامج النصي المحدد بشكل صحيح.
تخيل أنك قمت بتمرير معرف ملف إلى برنامج نصي ASP، باستخدام Request.QueryString، وسوف تتأكد من أن معرف الملف هو الذي يريد المستخدم تحريره. تحتاج إلى إدخال بعض المعلومات للسجلات من قاعدة البيانات وعرضها على الشاشة. تشبه المعرفات الموجودة في قاعدة البيانات الأعداد الصحيحة، خاصة إذا كنت تستخدم ميزة "الترقيم التلقائي" في تلك المنطقة. المعرف الذي أدخلته هو في الواقع سلسلة. لذلك، لا يمكن أن يتطابق هذان الشخصان أبدًا إلا إذا قمت بالإرسال إلى نفس النوع.
سلسلة الاستعلام:
باستخدام FileSystemObject، يمكنك اختبار وجود نص — على سبيل المثال، *.html، *.asp، *.inc.، *.gif — أو دليل. إذا كان الملف موجودًا، فقد ترغب في حدوث سلسلة من الأحداث. إذا كان الملف غير موجود، فقد ترغب في حدوث أحداث أخرى، استخدم الكود التالي: <%
sPath = "/profiles/" & strFileName & ".asp"
sFile=Server.MapPath(sPath)
تعيين fe=Server.CreateObject("Scripting.FileSystemObject")
إذا fe.FileExists(sFile) ثم
"افعل شيئا."
الرد: اكتب "نعم، لقد وجدته!"
Response.اكتب "يمكنك الوصول إلى هذا الملف عن طريق "
Response.اكتب "<A HREF=""" & sPath & """>النقر هنا</A>."
آخر
"افعل شيئا."
Response.Write "عذراً. الملف المطلوب غير موجود."
نهاية إذا
%>
لاختبار ملفك ببساطة، قم بإضافة البرنامج النصي إلى الأعلى:
strFileName = "name"
'قم أولاً بتعيين اسم الملف لديك لهذا المتغير.
' يحمل strFileName الاسم فقط، وليس الامتداد أو المسار.
تأكد من تغيير مسار sPath إلى الدليل الظاهري الذي يوجد به ملفك
'قم بتشغيل البرنامج النصي.
ثم عد وقم بتغيير المتغير strFileName إلى اسم الملف
ليس لديك.
قم بتشغيل البرنامج النصي.
يعد تغيير الرمز الذي تم إدخاله إلى عدد صحيح أمرًا سهلاً للغاية وسيجعل عملك المستقبلي أسهل. تنسيق العينة هو:
<%.
خافت intUserID intUserID = Request.QueryString("userID")
intUserID = CInt(intUserID)
أصبح intUserID الآن عددًا صحيحًا.
%>
يمكنك أيضًا التعليق على رمز ASP الخاص بك واستخدامه.
رمز التعليق
في ASP، يتم تنفيذ البرنامج النصي قبل إرساله إلى المستعرض، لذلك لا تحتاج إلى استخدام علامات تعليق HTML عادية لإخفاء البرنامج النصي من المتصفحات الأقدم. في الواقع، لن يتم عرض البرنامج النصي الخاص بك في مصدر HTML نظرًا لأنه يتم تسليم كود المصدر هذا بواسطة المتصفح، لذلك لن تقوم المتصفحات القديمة بإطلاق أي رمز على الشاشة فجأة.
قد ترغب في التعليق على برامج ASP النصية الخاصة بك باستخدام التعليقات. في برامج VB النصية، يمكنك استخدام علامات الحذف لتسجيل التعليقات:
<%.
currentdate = now
' تأكد من استخدام علامات الاقتباس حول كود HTML
يعمل & على ربط السلسلة
Response.اكتب "اليوم هو: " & currentdate & "<BR>"
%>
استخدم // في البرامج النصية لـ ASP للإشارة إلى التعليقات
باستخدام include إذا كنت قد استخدمت ملفات .shtml من قبل، فقد يكون لديك ملفات مألوفة مع عملية العمل المضمنة، إذا لم يكن الأمر كذلك، فسنخبرك خطوة بخطوة بكيفية استخدامها.
التضمين هو سعة يتم تخزينها في ملف منفصل. في HTML القياسي، يتضمن عادةً استخدام الامتداد .inc. في ASP، يمكنك استخدام الملحق .asp أو .txt أو .inc. بعد ذلك سوف تقوم باستدعاء الملف إلى كود HTML. عند إرسال ملف HTML، يتم إخراج ملف التضمين من الملف الخاص وكتابته مباشرة على الشاشة كمحتوى HTML. ولذلك، إذا قمت بإجراء عرض كود المصدر، فإن صفحة العرض التي تراها ستكون هي نفسها التي تقوم بإدخالها.
للحصول على HTML عادي، سيوفر الكثير من الوقت عند إنشاء قالب للموقع. تعد عناصر الرأس والتذييل والتنقل جزءًا مما يظهر في عدد كبير من صفحاتك. عند استخدام التضمين، تقوم بإدخال الملف مرة واحدة واستدعاءه عند الحاجة. وهذا له العديد من المزايا:
عند تحديث المحتوى، تحتاج فقط إلى تحديث ملف واحد.
يتم عزل تضمين اللحوم عن صفحة HTML، لذلك يمكن لأي شخص يريد إجراء تغييرات على المحتوى تجنب العبث بالبرنامج النصي.
ملفات HTML الأساسية الخاصة بك أصغر حجمًا وأكثر وظيفية.
في ASP، التضمين لا يقدر بثمن. يمكنك استخدام البرنامج النصي مرارًا وتكرارًا، وفي بعض الأحيان يمكن أن يكون بسيطًا مثل سلسلة اتصال مخزنة في التضمين، ويمكن حذفه عندما لا تكون الصفحة متاحة.
لاستخدام ملفات التضمين، يمكنك استخدام أي من التنسيقات التالية:
<!-- #INCLUDE FILE="filename.inc" -->
أو
<!-- #INCLUDE VIRTUAL="/filename.inc" -->
يحتوي مرجع الملف المسارات ذات الصلة المستخدمة. يشير VIRTUAL إلى المسار المطلق للخادم المرتبط. إذا كنت تريد نقل الأدلة والملفات، فإن أسهل طريقة هي استخدام VIRTUAL افتراضيًا حتى لا تواجه بعض الأخطاء غير المتوقعة لاحقًا. من ناحية أخرى، عند اختبار الملفات، تحتاج إلى استخدام الملفات لأن ذلك يعتمد على كيفية إعداد خادمك الشخصي.
في HTML القياسي، تستخدم بشكل عام اللاحقة .inc لملفات التضمين الخاصة بك. في ASP، يمكنك استخدام .asp. وهذا يمنع الآخرين من فتح ملفاتك وقراءتها بسهولة.