بادئ ذي بدء ، أود أن أشكر V37 Banzhu لمساعدتي. يحل هذا الحل مشكلة عرض "المقالة السابقة المقالة التالية" والمقالات ذات الصلة ، ونشرها للجميع لمشاركتها.
رأيت منشورًا استخدمته معرف+1 و ID-1 للحكم على "المقال السابق والمقال التالي". أثناء الاستخدام ، وجدت مشكلة: عند حذف مقال في قاعدة البيانات ، سيكون المعرف متوقفًا. إذا تم استخدام ID+1 و ID-1 للحكم ، فلن يتم العثور على السجل. في هذا البرنامج ، تم العثور على معرف المقالة التالية من خلال الاستعلام عن السجل الأول أكبر من المعرف الحالي ، والسجل الأول أصغر من المعرف الحالي للعثور على معرف المقالة السابقة. وبهذه الطريقة ، حتى لو لم يكن المعرف مستمرًا ، يمكن عرضه بشكل طبيعي.
بالنسبة لعرض المقالات ذات الصلة ، أضف حقلًا لوحدًا في جدول البيانات لتمييز أعمدة المقالات المختلفة. أضف رقمًا لوحًا في كل مرة تضيف فيها مقالة جديدة. عند عرض مقال ، استعد قاعدة البيانات وفقًا لـ BoardID لعرض المقالات ذات الصلة.
تتضمن الحقول في مقالات جدول البيانات معرفًا ، لوحًا ، العنوان ، المحتوى ، المؤلف ، وقت الإضافة
نسخة الكود كما يلي:
<!-تبدأ البرنامج->
حدد دالة آنذاك للعثور على معرف المقالة التالية. إذا كان السجل الحالي هو السجل الأخير بالفعل ، فإن نص الإخراج "لا" هو
<٪
وظيفة
newrs = server.createObject ("adodb.recordset")
sql = "selecttop1*fromArticleshided>" & a1 & "orderbyid"
setNewrs = conn.execute (SQL)
ifnewrs.eofthen
الرد. write ("لا")
آخر
A2 = newrs ("معرف")
Response.write ("<ahref = 'view.asp؟ id =" & a2 & "' 'المقالة التالية </a>")
Endif
الوظيفية
٪>
حدد وظيفة TheHead للعثور على معرف المقالة التالية. إذا كان السجل الحالي هو السجل الأول بالفعل ، فإن نص الإخراج "لا" هو
<٪
وظيفة
headrs = server.createObject ("adodb.recordset")
sql = "selecttop1*fromArticleside <" & a1 & "orderbyiddesc"
setheadrs = conn.execute (SQL)
ifheadrs.eofthen
الرد. write ("لا")
آخر
A0 = Headrs ("ID")
Response.write ("<ahref = 'view.asp؟ id =" & a0 & "' '' المقالة السابقة </a>")
Endif
الوظيفية
٪>
ملف اتصال قاعدة البيانات
<!-#includefile = "conn.asp"->
احصل على معرف تم تمريره لعرض مؤلف العنوان ومحتوى المقالة
<٪
id = request ("id")
SQL = "SELECT*FromArtIlsyid =" & id
setRs = conn.execute (SQL)
٪>
<٪ boardid = rs ("boardid") ٪>
<title> نظام المقالة-<٪ = rs ("title") ٪> </title> <BodyLeftMargin = "0" TopMargin = "0">
<!-#includefile = "top.asp"->
<٪
dowhilenotrs.eof
٪>
<tablewidth = "773" border = "0" cellpacing = "0" cellpadding = "0" align = "center">
<tr>
<tdwidth = "576" align = "left">
<tablewidth = "557" border = "0" cellpacing = "5" cellpadding = "4" align = "left">