السلام عليكم ورحمة الله
تراني مبتدأ وشبه ميح في asp.net ، و خلال فترة انشائي لموقع للتعلم فقط (تخبيص وترقيع) تعلمت الكثير في
asp.net و .net ،، لذلك يا اخواني الطلاب لن تتعلموا إلى بالقراءة والعمل والتجربة المستمرة
خبصوا ورقعوا وليسوا لكن بشروط ويطلع تمام(ان شاء الله) :blush:
ومما تعلمته خلال الفترة السابقة:
اذا اشتغلت موقع asp.net فاكيد راح يكون في الموقع صفحة لارسال رسائل بالبريد الالكتروني
وفي بعض الاحيان قد تقوم بعمل قائمة بريدية لزوار الموقع حتى ترسل لهم آخر الأخبار الخاصة بمؤسستك.
بعض الأغبياء أو المتلصصين يحبوا أن تكون الالوان الموجودة في الصفحة (أصفر وأحمر وابيض) اقصد
صفحات الاخطاء التنفيذية التي يرسلها مترجم asp.net للمستقبل في حال وجود خطأ ، فيقوموا بادخال
صيغ بريد الكتروني كالأتي:
' or 5=5 يريد حقن جمل sql (الحل استعمال البارامترات) ..ابحث في المنتدى والموسوعة الحرة moon@hotmail نسي دوت كوم Iam very smart يستعبط على الموقع
الصفحة (أصفر وأحمر وابيض) ستظهر لمدير الموقع عندما يرسل الرسائل ، لذلك لا تفجع المدير حتى لا يدعي عليك وتابع القراءة..
ما الحل؟ الحل لتجنب هذا الغباء
التحقق من صيغة البريد الالكتروني من جهة الزبون(المتصفح) ثم من جهة الخادم(موقعك) .
وتذكر ان التحقق من جهة الزبون فقط هو دروشة واستهتار بأمان الموقع فالمهم والمهم التحقق من جهة الخادم.
يمكنك استخدام أدوات التحقق Validation Tools ومن أهم هذه الادوات RegularExpression ابحث عنها في المنتدى ستجد
أن الأداة بذاتها موقع أو مشروع ، ومتعبة للسيرفر بالنسبة لطريقتي السهلة التي سأذكرها
طريقتي:
من جهة الزبون استخدم اي طريقة تناسبك أو استخدم الجافا سكربت أو الفي بي سكربت ، ساكتب كود في بي سكربت لأني لم اتعلم الجافاسكربت
<script language="vbscript">
if (txtEmail.value Like "*@*.*")=true then
msgbox("right email!")
else
msgbox("Are you fool")
end if
</script>لكن من جهة الخادم فاستخدام الكود التالي أفضل من استخدام RegularExpression ، الكود بلغة في بي:
If (txtEmail.Text Like "*@*.*")=True AndAlso txtEmail.Text.Length>=5 Then
Response.Write("صيغة بريد صحيحة")
Else
Response.Write("صيغة خاطئة ، تأكد من صحة البريد الالكتروني المدخل")
End Ifفكرة الكود:
1-استعملت المعامل Like الذي وفر الوقت وسهل الصعب(استعمال RegularExp) ، درس مفصل عن استعمال المعامل Like هنا
2- تحققت هل عدد الحروف المدخلة أكبر أو يساوي خمسة ، لماذا؟ لأن صيغة المعامل Like بدون هذا الشرط ستجعل القيم التالية صيغ بريد الكتروني صحيحة
@. أو a@. أو @a.
هذا لما لدي ، اعذروني على الأطالة وبارك الله فيكم وغفر لنا ولكم
السلام عليكم ورحمة الله



