แนะนำ: Forum ASP Simple DIY ขั้นแรกให้ใช้การเข้าถึงเพื่อสร้างฐานข้อมูลใหม่ตั้งชื่อเป็น Luntan ชื่อของตารางข้อมูลคือข้อมูลและสร้างฟิลด์ต่อไปนี้: ข้อความชื่อเวลาและเวลา & rdquo
เมื่อเร็ว ๆ นี้ฉันได้อ่านฟอรัมบางอย่างเกี่ยวกับโปรแกรม Paging ASP แต่ยังมีผู้ติดตามอีกหลายคน แต่มีเพียงรหัสและไม่มีคำอธิบายโดยละเอียด สำหรับผู้เริ่มต้นสิ่งนี้จะไม่เชี่ยวชาญอย่างแท้จริง ครั้งนี้ฉันจะอธิบายเทคโนโลยีการเพจโดยละเอียดเพื่อให้ทุกคนสามารถเข้าใจ ASP Paging โอเคมาทำความเข้าใจกับโปรแกรมเพจด้วยกันอย่างละเอียดกัน!
ก่อนอื่นมาดูเอฟเฟกต์!
ตรวจสอบฟังก์ชั่น: โปรแกรมเพจก่อนอ่านจำนวนบันทึกที่ตั้งไว้ล่วงหน้าสำหรับแต่ละหน้า นี่คือ 5 และอื่น ๆ จะปรากฏในหน้าถัดไปและแจ้งจำนวนหน้าปัจจุบันจำนวนหน้าทั้งหมดและจำนวนระเบียนทั้งหมด เมื่อจำนวนหน้าแสดงเป็นหน้าแรกลิงก์ไปยังหน้าแรกและหน้าก่อนหน้านั้นไม่ถูกต้อง เมื่อจำนวนหน้าแสดงเป็นหน้าสุดท้ายลิงก์ไปยังหน้าถัดไปและหน้าสุดท้ายไม่ถูกต้อง
ถัดไปให้บอกวิธีการทำเอฟเฟกต์การแบ่งหน้านี้ทีละขั้นตอนในรูปแบบของตัวอย่าง
ก่อนอื่น Field Record_info ในฐานข้อมูลมีอยู่ในตารางข้อมูล (มีฐานข้อมูลในการดาวน์โหลดอินสแตนซ์) ขั้นแรกให้เชื่อมโยงฐานข้อมูลและเปิดชุดระเบียน รหัสต่อไปนี้:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - SET Conn = Server.CreateObject (ADODB.Connection) connstr = provider = microsoft.jet.oledb.4.0; แหล่งข้อมูล = & server.mappath (data.mdb) conn.open connstr ตั้งค่า rs = server.createObject (adodb.recordset) SQL = เลือก * จากข้อมูล Rs.Open SQL, Conn, 1,1 - |
รหัสนี้ไม่ได้อธิบายอย่างละเอียดฉันเชื่อว่าผู้ที่เพิ่งเริ่มต้นใช้งานสามารถทำได้ สำหรับคำอธิบายเฉพาะโปรดดูการสอน "สอนให้คุณใช้ ASP เป็นสมุดข้อความ"
ถัดไปนี่เป็นส่วนที่ค่อนข้างสำคัญของหน้าเพียงสามบรรทัด:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - Rs.Pagesize = 5 curpage = request.querystring (curpage) rs.absolutePage = curpage - |
ประโยคที่สอง:
Rs.Pagesize = 5 สิ่งนี้หมายความว่าอย่างไร? มันเป็นคุณสมบัติในตัวในวัตถุ RecordSet ฟังก์ชั่นของมันคือการระบุจำนวนระเบียนต่อหน้า เมื่อตั้งค่าเป็น 5 บันทึก 5 รายการแต่ละรายการจะถูกรวบรวมไว้ในหน้าเดียว ตัวอย่างเช่นมี 21 ระเบียนในอินสแตนซ์ จากนั้นหลังจากใช้ Rs.Pagesize เพื่อ paginate บันทึก 21 รายการเหล่านี้จะถูกแบ่งออกเป็น 5 หน้าสำหรับการแสดงผล
ประโยคที่สาม:
ส่วนใหญ่ใช้สำหรับฟังก์ชั่นการเลี้ยวหน้าผ่านพารามิเตอร์หลังพารามิเตอร์ของ URL ไปยังตัวแปร curpage และ curpage นี้จะได้รับจำนวนหน้าที่เบราว์เซอร์ต้องการเข้าถึง (คุณจะเข้าใจหลังจากเรียกใช้ตัวอย่าง)
ประโยค 4:
Rs.AbsolutePage ซึ่งเป็นคุณสมบัติในตัวซึ่งหมายถึงการระบุค่าของตัวแปร curpage เป็นหน้าปัจจุบัน
ตอนนี้เริ่มปล่อยให้การแสดงลูปบันทึก:
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: - สำหรับ i = 1 ถึง Rs.Pagesize ถ้า RS.EOF แล้ว ออกจาก สิ้นสุดถ้า - <%= rs (record_info)%> <br> - Rs.Movenext ต่อไป - |
ประโยคที่สอง:
ใช้ A for loop เพื่อแสดงจำนวนระเบียนที่ระบุในคุณสมบัติ Rs.Pagesize ต่อหน้า
ประโยคที่สามสี่และห้า:
ประโยคนี้หมายความว่าเมื่อหน้าสุดท้ายไม่ถึงระเบียนที่ระบุมันจะออกจากลูปเพื่อหลีกเลี่ยงข้อผิดพลาด
ประโยค 7:
ฟิลด์ record_info ผูกพันที่จะดึงจากฐานข้อมูลเรียกว่าระเบียนในฟิลด์นี้ที่จะแสดงลูป
ประโยคที่เก้า:
ใช้วิธี Rs.Movenext เพื่อย้าย RS Record Set Down โดยหนึ่งระเบียน
ประโยค 10:
สำหรับคำสั่งลูป
นอกจากนี้คุณสามารถใช้ <%= curpage%> ในการอ่านหน้าปัจจุบันให้ใช้ <%= rs.pageCount%> เพื่ออ่านจำนวนหน้าทั้งหมดและใช้ <%= rs.recordcount%> เพื่ออ่านจำนวนระเบียนทั้งหมด ตัวอย่างเช่น: หน้า <%= curpage%> หน้ามีหน้า <%= rs.pageCount%> หน้ารวม: <%= rs.recordCount%> บันทึกทั้งหมด
ในแง่ของการแสดงโฮมเพจหน้าก่อนหน้าหน้าถัดไปและหน้าสุดท้ายจะใช้คำสั่ง if ... อื่น ... ซึ่งใช้งานง่ายกว่าที่จะเข้าใจ
| ต่อไปนี้เป็นเนื้อหาที่ยกมา: <%ถ้า curpage = 1 แล้ว%> หน้าแรก <%อื่น%> <a href =? curpage = 1> โฮมเพจ </a> <%end ถ้า%> <%ถ้า curpage = 1 แล้ว%> หน้าก่อนหน้า <%อื่น%> <a href =? curpage = <%= curpage-1%>> หน้าก่อนหน้า </a> <%end ถ้า%> <%ถ้า rs.pagecount <curpage 1 แล้ว%> หน้าถัดไป <%อื่น%> <a href =? curpage = <%= curpage 1%>> หน้าถัดไป </a> <%end ถ้า%> <%ถ้า rs.pagecount <curpage 1 แล้ว%> หน้าสุดท้าย <%อื่น%> <a href =? curpage = <%= rs.pagecount%>> หน้าสุดท้าย </a> <%end ถ้า%> |
เข้าใจ:
หน้าแรก:
สิ่งนี้จะถูกกำหนดเมื่อใช้ว่าหน้าปัจจุบันเป็นหน้าแรกหรือไม่ หากหน้าปัจจุบันเป็นหน้าแรก (นั่นคือโฮมเพจ) จากนั้นคำว่า "โฮมเพจ" จะปรากฏขึ้นและไม่มีลิงค์ มิฉะนั้นจะมีลิงค์เพื่อข้ามไปยังหน้าแรก
หน้าก่อนหน้า:
เมื่อปัจจุบันเป็นหน้าแรกลิงก์จะไม่ถูกต้อง ในทางกลับกันลิงค์คือไปยังหน้าก่อนหน้าปัจจุบัน ใช้: <%= curpage-1%> ที่นี่ซึ่งเป็นการลบ 1 จากจำนวนหน้าปัจจุบันเพื่อรับหน้าก่อนหน้า
หน้าถัดไป:
ที่นี่เราต้องใช้คุณสมบัติ Rs.Pagecount เพื่อเปรียบเทียบ หากจำนวนหน้าทั้งหมดมีขนาดเล็กกว่าค่าของจำนวนหน้าปัจจุบันบวก 1 หมายความว่านี่เป็นหน้าถัดไปและลิงก์จะไม่ถูกต้องมิฉะนั้นลิงค์จะเชื่อมโยงกับหน้าถัดไป
หน้าสุดท้าย:
เช่นเดียวกับฟังก์ชั่นของหน้าถัดไปจะมีการพิจารณาว่าลิงค์นั้นไม่ถูกต้องเมื่อหน้าสุดท้ายเหมือนกัน มิฉะนั้นหน้าปัจจุบันจะถูกระบุเป็น rs.pagecount (จำนวนหน้าทั้งหมด)
บทช่วยสอนนี้จบลงที่นี่ หลังจากคำอธิบายคุณควรมีความเข้าใจที่ลึกซึ้งยิ่งขึ้นเกี่ยวกับเทคโนโลยีการแบ่งหน้าของ ASP ใช่ไหม? หากคุณมีคำถามใด ๆ คุณสามารถติดต่อฉันได้โดยฝากข้อความไว้ในบล็อก
แชร์: รหัสโปรแกรมเครื่องเล่นวิดีโอเว็บ เมื่อสร้างโปรแกรมให้กับลูกค้าฉันพบปัญหาทันทีนั่นคือเมื่อผู้ใช้หน้าผลิตภัณฑ์ส่งไฟล์การเล่นวิดีโอวิธีการเล่นรูปแบบวิดีโอที่ถูกต้องใน URL ที่ส่ง ...