بناء على الكثير من الطلبات التي تطلب مثال على التأكد من بيانات مشترك ثم انتقال لصفحة ما سأقوم بطرح
هذا المثال الذي يحوي فكرة نوعا ما .. فكرة المثال وجود عدد من الطلبة أو الكتاب أو أي فئة علمية بالمجتمع
لها مقالات عديدة .. تم الإتفاق فيما بينهم على أن لكل شخص منهم أي من كتاب المقالات أن تكون له كلمة مرور
و اسم للدخول حتى يتمكن من المشاركة .. ثم اتفقوا أيضا على طريقة لحفظ مقالاتهم على النت و الطريقة هي كالتالي :
لو نفرض أن اسم المستخدم : mohd
كلمة المرور : 1234
إذا يجب أن يحفظ مقاله في صفحة html و يكون اسمها مركبا من اسمه و كلمة المرور كالتالي :
mohd_1234.html
طبعا بعد أن يدخل المستخدم بياناته و يتم مقارنتها بما هو مخزن بقاعدة البيانات يتم تحويله لصفحة المقال الخاصة
به و الا يبقى في نفس الصفحة و تظهر له رسالة تخبره بالخطأ ..
'Default.asp-->>>>
<html dir="rtl">
<!--#include file="connection.inc"-->
' إجرائية للتأكد من أن الحقول غير فارغة عند ضغط زر الدخول للمقال
<script id=clientEventHandlersVBS language=vbscript>
<!--
Sub send_onclick
If RTrim(MyForm.Name.Value)="" _
or RTrim(MyForm.Password.Value)=""then
MsgBox "هناك حقول فارغة يجب أن تملأها",vbinformation,"F@RES"
Else
MyForm.submit
End if
End Sub
-->
</script>
<style type="text/css">
<!--
A:link {text-decoration: none; color:}
A:visited {text-decoration: none; color:}
A:active {text-decoration: none; color: }
A:hover {text-decoration: underline;color:#FF0000;}
//-->
</style>
<%
' استقبال القيم القادمة من الحقول
name=request("name")
password=request("password")
' انشاء استعلام يتأكد من بيانات الطالب مثلا
set rs=cn.Execute("select * from students where studentName='"&name&"' and studentNo ='"&password&"'")
' إذا كانت السجلات عددها صفر أي أنه لا يوجد تطابق يظهر الصفحة عادية
if rs.eof then
%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1256">
<title>الصفحة الرئيسية</title>
</head>
<body text="#000000" bgcolor="#123456">
<table border="2" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#FFFFFF" width="24%" height="171" bgcolor="#FF000">
<tr>
<td width="100%" height="171">
<table border="2" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#003366" width="179" height="26" bgcolor="#FF0000">
<tr><td bgcolor="#0099FF" height="36" width="174">
<span style="font-weight: 700" lang="ar-sa">
<font face="Tahoma" style="font-size: 8pt" color="#FFFFFF">ادخــل بياناتك
لترى مقالاتك الخاصة :</font></span></td></tr>
<tr>
<td width="174" bgcolor="#123456" height="1">
<form name=MyForm action="default.asp" method="GET">
<center>
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="103%" bgcolor="#FF0000" height="66">
<tr>
<td width="42%" bgcolor="#FF9900" height="9">
<p align="center"><span style="font-weight: 700" lang="ar-sa">
<font face="Tahoma" style="font-size: 7pt" color="#FFFFFF"> الاسم :</font></span></td>
<td width="58%" align="right" bgcolor="#FF9900" height="9">
<p align="center"><input name=name size="16" style="float: right" ></td>
</tr>
<tr>
<td width="42%" bgcolor="#FF9900" height="30">
<p align="center"><span lang="ar-sa"><span style="font-size: 7pt"> </span><span style="font-weight: 700"><font face="Tahoma" style="font-size: 7pt" color="#FFFFFF">كلمة
المرور :</font></span></span></td>
<td width="58%" align="right" bgcolor="#FF9900" height="30">
<p align="center">
<input type=password name=password size="16" maxlength="8" style="float: right" ></td>
</tr>
<tr>
<td width="100%" colspan="2" height="16" bgcolor="#0099FF">
<hr noshade color="#FFFFFF">
</td>
</tr>
<tr>
<td width="100%" colspan="2" height="1">
<tr>
<td width="100%" colspan="2" bgcolor="#FF9900" height="11">
<p align="center"><input type="button" name="send" value="اذهب"></td>
</tr>
</table>
</center>
</form></td>
</tr>
<tr>
<td width="174" bgcolor="#0099FF" height="1">
<span style="font-weight: 700">
<font face="Wingdings" style="font-size: 7pt" color="#FF0000">u</font><font style="font-size: 7pt" face="Tahoma" color="#FFFFFF"><span lang="ar-sa">
يجب أن يكون الرقم الجامعي على هيئة</span> : <span lang="ar-sa"> </span>2748</font></span>
</font></span></td>
</tr></td>
</tr>
</table>
</td>
</tr>
</table>
<p align="right"><font face="Tahoma" style="font-size: 7pt" color="#FFFFFF">
<span style="font-weight: 700" lang="ar-sa">مرحبا بك ... يمكنك استخدام
الاسم </span><span style="font-weight: 700" lang="en-us">
<font color="#FF9900">F@RES</font></span><span style="font-weight: 700">
و كلمة المرور </span></font><span style="font-weight: 700">
<font face="Tahoma" style="font-size: 7pt" color="#FF9900">1234</font></span></p>
<p align="right"><font face="Tahoma" style="font-size: 7pt" color="#FFFFFF">
<span style="font-weight: 700" lang="en-us">
</span><span style="font-weight: 700">أو </span></font>
<span style="font-weight: 700">
<font face="Tahoma" style="font-size: 7pt" color="#FF9900"><span lang="en-us">
AHMED</span></font><font face="Tahoma" style="font-size: 7pt" color="#FFFFFF"> و
كلمة المرور</font><font face="Tahoma" style="font-size: 7pt" color="#FF9900">
0000</font></span></p>
<p align="right"><font face="Tahoma" style="font-size: 7pt" color="#FFFFFF">
<span style="font-weight: 700" lang="en-us">
</span><span style="font-weight: 700">للتجربة .. طبعا أنا حفظت صفحتين بأسماء
الطالبين و أرقامهم بامتداد <span lang="en-us">htm</span> ....و يمكنك أن تعدل على
قاعدة البيانات بأن تحذف جدول <span lang="en-us">articles</span>.</span></font></p>
<p align="center"><span style="font-weight: 700" lang="en-us">
<font face="Tahoma" style="font-size: 7pt" color="#0099FF">For Any Request</font><font face="Tahoma" style="font-size: 7pt" color="#FFFFFF">
:</font><font face="Tahoma" style="font-size: 7pt" color="#0099FF"> </font>
<font face="Tahoma" style="font-size: 7pt" color="#FF9900">mohd_kh_80@hotmail.com</font></span></p>
<%
' هناك إحتمالان للصفحة العادية و هي إما أنها بداية فتح الصفحة أو الانتقال اليها
' بعد تعبئة البيانات بالخطأ لذا نقوم هنا بالتأكد من القيم المستقبلة .. طبعا من المنطقي أنه إن كانت خالية
' فإن ذلك يعني أنها أول مرة تفتح الصفحة و إذا كانت فيها قيم و لم ينتقل للمقال فمعناه انها خطأ
if request("name")<>"" then
response.write _
"<p align=center><font size=1 face=Tahoma style=color=#FF0000><b>الرجاء تعبئة البيانات صحيحة"
end if
else
' يتم الدخول لهذه الخطوة إن تم التأكد من البيانات و كانت صحيحة
session("studentNo")=rs("studentNo")
response.write "<font color=#FF0000>مرحبا بك يا <font face=tahoma color=#FF9900 size=2>" & rs("studentName") & "
"
response.write _
"<body bgcolor=#123456><font face=tahoma size=2 color=#FFFFFF>"&_
"لقد تم تسجيلك بنجاح سوف ننقلك بعد خمس ثواني إلى صفحة مشاهدة مقالاتك الخاصة"
%>
' انتبه هنا لعنوان المتصفح الذي سننقل الطالب له و هو عبارة عن إسمه و رقمه
<meta http-equiv="refresh" content="5;URL=<%=rs("studentName")%>_<%=rs("studentNo")%>.htm">
<%
end if
%>
<p> </p>
</body></html>أتمنى ان تكون الفكرة قد وصلت و هي سهلة جدا و ما يهمكم من دش الكام فكله يتم توليده من الفرونت بيج .. المهم تفهم
الفكرة جيدا و أنت بمجرد تجزئة الكود تجده بسيط للغاية .. أما قاعدة البيانات مو حكاية و معروفة حقولها و هي رقم معرف
و حقل للاسم و كلمة المرور حقل اخر و كل عام و انتم بخير :)
على العموم اللي يواجه مشكلة يخبرني و أنا راح أرفق مثال مع هذا الموضوع جاهز و ما عليك الا تجرب ..
مع أطيب التمنيات للجميع ..