اتبع نظام المقالة العادي طوال الطريق، حيث يتم تشغيل إضافة المقالة الخلفية واسترجاع المقالة وصفحة تفاصيل المقالة بالطريقة العادية. لا يوجد وصف هنا.
تجدر الإشارة إلى أن [الصفحة] تحتاج إلى حذف المسافات الموجودة في المنتصف، نظرًا لتكرارها مع ترحيل الصفحات في الخلفية لـ Script Home، تتم إضافة مسافات.
فقط عند إضافة مقال، قم بإضافة فاصل صفحات حيث تريد أن يتم ترحيله إلى صفحات: [page] (بالطبع، يمكنك استخدام هذا الرمز بشكل عرضي، مثل: [page]، &&&، ###، @@@.. .، طالما أنها لن تظهر في المكان الذي يجب أن يتم عرض المقالة فيه بشكل طبيعي.)
لقد استخدمت أربع صفحات، صفحة الإدخال (index.asp)، وصفحة إكمال الإدخال (add.asp)، وصفحة قائمة المقالات (view.asp)، وصفحة محتوى المقالة (text.asp). تحتاج إلى معالجة الصفحة، بالنظر إلى المقدمة التالية، أعتقد أن الطيور العادية يمكنها القيام بذلك، والمفتاح هو النص الأخير.asp، وجميع الرموز الخاصة بتنفيذ الترحيل موجودة هنا.
الخطوة 2: تعال
قم ببعض الحيل في جزء البيانات الديناميكية من نص المقالة، وفيما يلي الكود والشرح:
انسخ الكود كما يلي:'هذا هو الكود الخاص بمعالجة الترحيل
' لكي تكون في الجانب الآمن، نستخدم وظيفة الاستبدال لإضافة مسافة كاملة العرض قبل وبعد رمز الترحيل
MMText=replace(rs(contents),[ page ], [ page ] )
MMfText= Split(MMText,[page ])
'استخدم الدالة ubound للحصول على عدد الصفحات المراد تقسيمها. لاحظ أن قيمة الخط المنخفض تبدأ من 0
contentNum=ubound(MMfText)
page=Clng(request(page))
إذا كانت الصفحة <1، ثم
تنتهي
الصفحة = 1
إذا'لكي تبدو أكثر سهولة، قمنا بتعيين صفحة البداية على 1، ثم أضف 1 إلى إجمالي عدد الصفحات
إذا كانت الصفحة>contentNum+1 ثم
page=contentNum+1
end إذا
'قم بالتغيير إلى متغير الجانب الذي سيتم عرضه والذي تم الحصول عليه من معلمة url أعلاه، واعرض الصفحة في حلقة
لـ i=page to page
Response.write MMfText(i-1)
next
' قم بإدراج ترقيم الصفحات
إذا كان cint(contentNum)>0 ثم
إذا كانت الصفحة<>1، فإن
الاستجابة. اكتب <a href='text.asp?id=&request(id)&&page=&page-1&'>[الصفحة السابقة]</a>
تنتهي إذا كانت
'تذكر أن قيمة الخط المنخفض هي من بدءًا من 0، نبدأ الترحيل من 1 هنا، ونضيف 1 إلى الإجمالي
لـ p=1 إلى contentNum+1
إذا كانت page=p ثم
Response.write <a href='text.asp?id=&request(id)&&page= &p&'> <font color=red>[&p&]</font></a>
else
Response.write <a href='text.asp?id=&request(id)&&page=&p&'>[&p&]</a>
النهاية إذا كان
التالي
إذا page<>contentNum+1 ثم
Response.write <a href='text.asp?id=&request(id)&&page=&page+1&'>[الصفحة التالية]</a>
النهاية إذا
النهاية إذا
كانت هناك مقالات من مواقع أخرى أدناه، فيمكنك أيضًا الرجوع إليها.
يتم عرض صفحات المقالات الطويلة مع فواصل الصفحات، وأريد استخدام ASP لتنفيذ هذه الوظيفة، ولكن يمكنني أن أجد أنه لا يوجد سوى طريقة لترقيم الصفحات بناءً على عدد الكلمات، ولكن هذه الطريقة بها خطأ، هذا إذا كان هناك إذا كان كود UBB موجودًا في محتوى مقالتك، فمن السهل جدًا أن يؤدي ذلك إلى ترقيم الصفحات بين [code] [/code]، أو ببساطة تحلل [code] إلى [co وde]، مما يتسبب في حدوث أخطاء في عرض المقالة.
الخطوات التالية ستجعل هذا ممكنا.
الخطوة 1:
اتبع نظام المقالات العادي على طول الطريق. يتم تشغيل إضافة المقالات في الخلفية واسترجاع المقالات وصفحات التفاصيل بالطريقة المعتادة. لا يوجد وصف هنا، يرجى الرجوع إلى المنشورات ذات الصلة. فقط عند إضافة مقال، أضف فاصل صفحة حيث تريد أن يتم ترحيله إلى صفحات: ||| (بالطبع، يمكنك استخدام هذا الرمز بشكل عرضي، مثل: [page ], &&&, ###, @@@...، طالما أنها لا تظهر في المكان الذي سيتم عرض المقالة فيه بشكل طبيعي.)
لقد استخدمت أربع صفحات، صفحة الإدخال (index.asp) وصفحة إكمال الإدخال (إضافة).asp)، صفحة قائمة المقالات (view.asp)، صفحة محتوى المقالة (display.asp)، الصفحات الثلاث الأولى هي الصفحات التي لا تحتاج إلى معالجة، بالنظر إلى الصورة أدناه، أعتقد أن الطيور العادية يمكنها ذلك افعل ذلك، المفتاح هو آخر ملف displasy.asp، كل التعليمات البرمجية لتنفيذ الترحيل موجودة هنا.
الخطوة 2:
قم ببعض الحيل في جزء البيانات الديناميكية من نص المقالة، فيما يلي الكود والشرح:
انسخ الكود كما يلي:
<%
'هنا نحتاج إلى معالجة معلمات الترحيل المستلمة لعرض محتوى أي صفحة
. الجملتان التاليتان للسماح للمتغير pageNum بأخذ قيمة الصفحة الأولى إذا لم يتم تمرير أي معلمة للصفحة: 0
إذا كان Request(page)= ثم
pageNum=0
'خلاف ذلك، قم بتعيين قيمة المعلمة في الصفحة التي تم تمريرها للمتغير ، لإظهار
الصفحات
الأخرىElsepageNum=Request(page)
End if
%>
<%
'إذا قمت بإضافة كود UBB للتنفيذ الاختياري، فيمكنك إضافة الكود التالي
'rs(NoUBB) هو الحقل الموجود في قاعدة البيانات حول تعطيل UBB، 0 يعني التعطيل، 1 يعني التنفيذ
إذا rs(NoUBB)=0 ثم
'لتجنب الأخطاء عند الاتصال بمحتوى المقالة، استخدم وظيفة الاستبدال لإضافة عرض كامل قبل رمز الترحيل وبعده |||
'rs(content) هو حقل النص في قاعدة البيانات، أضف UBB هنا أو قم بتعطيل UBB
Content=Replace((unHTML(rs(content))),|||, ||| )
Elseif rs(NoUBB)=1 ثم
Content=Replace((ubb(rs(content))),|||, || |. )
End if
%>
<%
'هنا هو المفتاح
' نستخدم دالة التقسيم لإخراج المقالة إلى أقسام وتخزينها في المحتوى المتغير
ContentStr=split(Content,|||)
'وفقًا للمتغير الذي سيتم عرضه والذي تم الحصول عليه للتو من معلمة URL، قم بعرض الصفحة في حلقة
من أجل i=pageNum إلى pageNum
%>
<!--سيكون هذا هو محتوى النص للمقال-->
<%=ContentStr % >
< % التالي %>
</td>
</tr>
<tr>
<td height=30 class=ClassName>تنقسم هذه المقالة إلى
<%
'في منطقة الترحيل، استخدم ubound(ContentStr) للحصول على عدد الصفحات التي تم تقسيم المقالة إليها، لاحظ أنه يبدأ من 0، لذلك يجب إضافة إجمالي عدد الصفحات بمقدار 1.
بالنسبة لـ p = 0 إلى ubound(ContentStr). )
'لا يزال الرابط موجودًا في هذه الصفحة، لكن المقالة يجب إضافة معلمة ترحيل بعد معلمة المعرف: الصفحة
%>
<a href=display.asp?ID=<%=rsquest(ID)%>&page=<%= p%> class=><%=p+ 1%></a>
صفحة <% Next %>
بسيطة للغاية، إذا تم حذف جميع التعليقات، فستحتوي على 15 سطرًا فقط من التعليمات البرمجية، ومع ذلك، لا تزال بحاجة إلى المعالجة حتى تتمكن من الحصول على وظائف تمييز الصفحة السابقة والصفحة التالية و الصفحة الحالية سوف تكون مثالية.
لقد تم اختباره. ما لم يظهر فاصل الصفحات في المقالة، فلن تخطئ جميع أنواع الأخطاء، بالطبع، يمكنك زيادة عدد |||، على سبيل المثال: ||||||، وسيكون كذلك حسنًا، إذا ظهر ستة |. أو أقل في المقالة، ولكن إذا كان هناك أكثر من ستة، فستكون هناك فواصل صفحات جيدة.