บทที่ 8 การใช้งานหน้าผู้ดูแลระบบ
จนถึงขณะนี้ ฟังก์ชั่นพื้นฐานของ BLOG ของ Doking ได้ถูกนำมาใช้แล้ว อย่างไรก็ตาม ผู้ดูแลระบบมี "พลังแห่งชีวิตและความตาย" สูงสุดในการจัดการบันทึกและการตอบกลับที่โพสต์โดยผู้ใช้อย่างเคร่งครัด เพื่อป้องกันไม่ให้ผู้ใช้โพสต์ข้อมูลที่เป็นอันตรายในบล็อกของ Doking
(1) สร้างหน้าว่าง APS.NET VB ไดนามิก glogin.aspx แทรกแบบฟอร์ม glfrm แล้วแทรกตาราง การตั้งค่าดังแสดงในรูปที่ 8-1
รูปที่ 8-1 การออกแบบหน้าของ glogin
(2) ให้ ID ของกล่องข้อความที่ตรงกับผู้ดูแลระบบเป็น GLY และ ID ของกล่องข้อความที่ตรงกับรหัสผ่านเป็น GLPASS
(3) เพิ่มชุดข้อมูล gly และตั้งค่าเป็นตัวกรอง ดังแสดงในรูปที่ 8-2
รูปที่ 8-2 เพิ่มชุดข้อมูล gly
(4) คลิกปุ่ม "Advanced" และเพิ่มพารามิเตอร์ @GLPASS ดังแสดงในรูปที่ 8-3
รูปที่ 8-3 เพิ่มพารามิเตอร์ @GLPASS
(5) ในกล่องโต้ตอบชุดข้อมูลขั้นสูง ให้เปลี่ยนคำสั่ง SQL ให้เป็นคำสั่งที่แสดงในรูปที่ 8-4
รูปที่ 8-4 กล่องโต้ตอบชุดข้อมูลขั้นสูง
(6) สลับไปที่มุมมองโค้ดและแทรกโค้ดที่แสดงในรูปที่ 8-5 ก่อนแท็ก <html>
รูปที่ 8-5 ใส่โค้ดก่อนแท็ก <html>
(7) และบันทึก glogin.aspx
จากหัวข้อที่แล้ว คุณจะเห็นว่าหลังจากที่ผู้ดูแลระบบเข้าสู่ระบบสำเร็จแล้ว เขาจะถูกเชื่อมโยงกับหน้าแรกของ BLOG ของ Doking เพื่อจัดการบันทึกการศึกษา อย่างไรก็ตาม ในบทที่แล้ว index.aspx ไม่มีหน้าที่ในการลบบันทึกการศึกษา ส่วนนี้จะเพิ่มฟังก์ชันการทำงานนี้เข้าไป
(1) ในแถวแรกของตาราง ztre ให้ใส่ป้าย asp Label1 พร้อมข้อความ: Delete ดังแสดงในรูปที่ 8-6
รูปที่ 8-6 ใส่ asp label Label1
(2) คลิกขวาเพื่อเลือก asp label Label1 เลือก "Edit Label" ใต้เมนูทางลัด เลือก "Style Information" และตั้งค่าให้มองไม่เห็น ดังแสดงในรูปที่ 8-7
รูปที่ 8-7 ตั้งค่าป้ายกำกับ asp Label1 ให้มองไม่เห็น
(3) แทรกช่องทำเครื่องหมายใต้ตัวควบคุมแบบฟอร์มแล้วตั้งชื่อว่า ZTID และแทรกปุ่มใต้ตัวควบคุมแบบฟอร์มด้วย ID GLY ผลลัพธ์จะแสดงในรูปที่ 8-8 .
รูปที่ 8-8 ในการตั้งค่า (4) ของตาราง ztre
ให้สลับไปที่แท็บ [Properties] ใต้แผง [Label] ขยายรายการ "ทั่วไป" และคลิกข้อมูลไดนามิกในรายการ "value" ดังแสดงในรูป 8-9 .
รูปที่ 8-9 แผงแอตทริบิวต์ป้ายกำกับ ZTID
(5) ในกล่องโต้ตอบป๊อปอัป "ข้อมูลไดนามิก" ให้เลือกฟิลด์ ZTID ใต้ชุดข้อมูล Ztre แล้วกดปุ่ม "ตกลง" ดังแสดงในรูปที่ 8-10
รูปที่ 8-10 หน้าต่างข้อมูลไดนามิก
(6) คลิกขวาที่แถบสถานะและเลือก <input#ZIID> เพื่อเปิดหน้าต่างป้ายกำกับการแก้ไขด่วน และเพิ่มโค้ดลงในป้ายกำกับ:
style="visibility: <%# iif(session ("GLY") <>nothing,"visible","hidden")%>" value="<%# Ztre.FieldValue("ZTID", Container) %>"
ดังแสดงเป็นสีน้ำเงินเข้มในรูปที่ 8-11
รูปที่ 8-11 แก้ไขแท็ก <input#ZIID> อย่างรวดเร็ว
(7) เลือกปุ่ม GLY คลิกขวาที่แถบสถานะและเลือก <input#GLY> เพื่อเปิดหน้าต่างแท็กแก้ไขด่วน และเพิ่มโค้ดลงในแท็ก :
style="visibility: <% # iif(session("GLY")<>nothing,"visible","hidden")%>" value="<%# Ztre.FieldValue("ZTID", คอนเทนเนอร์) %>
(8) เพิ่ม"
ลบบันทึก" ลักษณะการทำงานของเซิร์ฟเวอร์ การตั้งค่าจะแสดงในรูปที่ 8-12
รูปที่ 8-12 การเพิ่มลักษณะการทำงานของเซิร์ฟเวอร์ "Delete Record"
(9) กดปุ่ม "OK" เพื่อดำเนินการเพิ่มลักษณะการทำงานของเซิร์ฟเวอร์ "Delete Record" ให้เสร็จสิ้น สลับไปที่มุมมองโค้ดเพื่อค้นหาโค้ดต้นฉบับของพฤติกรรมเซิร์ฟเวอร์ "ลบบันทึก" ดังที่แสดงในวงกลมสีแดงในรูปที่ 8-13
รูปที่ 8-13 รหัสเดิมของพฤติกรรมเซิร์ฟเวอร์ "Delete Record"
(10) ลบรหัสในบรรทัดที่ 5, 8, 12, 13 และ 14 ดังแสดงในรูปที่ 8-2-8 และตั้งค่า Debug ใน บรรทัดที่ 10 เป็น true เปลี่ยนเป็น false และเพิ่มลักษณะการทำงานใหม่: id="del1" ดังแสดงในวงกลมสีแดงในรูปที่ 8-14 หลังการแก้ไข
รูปที่ 8-14 รหัสต้นฉบับของพฤติกรรมเซิร์ฟเวอร์ del1 ที่แก้ไข "ลบบันทึก"
(11) คัดลอกรหัสที่แสดงในวงกลมสีแดงในรูปที่ 8-2-9 นั่นคือคัดลอกรหัสต้นฉบับของ "ลบบันทึก" ที่แก้ไขแล้ว ลักษณะการทำงานของเซิร์ฟเวอร์ del1 และเปลี่ยน Paste ลงในตำแหน่งที่เหมาะสมและเปลี่ยน id เป็น "del2" ดังแสดงในรูปที่ 8-15
รูปที่ 8-15 เพิ่มพฤติกรรมเซิร์ฟเวอร์ del2 "ลบบันทึก"
(12) ใส่โค้ดที่แสดงในวงกลมสีแดงในรูปที่ 8-16 ลงในเหตุการณ์ page_load ที่ถูกกระตุ้นโดยการโหลดเพจ
รูปที่ 8-16 รหัสที่แทรกในเหตุการณ์ page_load ที่ถูกกระตุ้นโดยการโหลดเพจ
หลักการและวิธีการในการจัดการการตอบกลับบันทึกและการจัดการบันทึกการศึกษามีความสอดคล้องกัน
(1) เปิด index.aspx คัดลอกป้ายกำกับ asp Label1 ตัวควบคุมฟอร์ม ZTID และปุ่ม GLG เปิด hf.aspx วางตัวควบคุมทั้งสามนี้ในตำแหน่งที่แสดงในรูปที่ 8-17 และเปลี่ยน ID ของตัวควบคุมแบบฟอร์ม ZTID เป็น โรคประจำตัว.
รูปที่ 8-17 วางการควบคุมไปที่ hf.aspx
(2) เลือกช่องทำเครื่องหมาย HFID สลับไปที่แท็บ [คุณสมบัติ] ใต้แผง [ป้ายกำกับ] ขยายรายการ "ทั่วไป" และคลิกข้อมูลไดนามิกในรายการ "ค่า" ในกล่องโต้ตอบ "ข้อมูลไดนามิก" ที่ปรากฏขึ้น ให้เลือกฟิลด์ HFID ใต้ชุดข้อมูล Hfre แล้วกดปุ่ม "ตกลง" ดังแสดงในรูปที่ 8-18
รูปที่ 8-18 หน้าต่างข้อมูลไดนามิก
(3) คัดลอก "del1" ใน index.aspx เพื่อลบโค้ดต้นฉบับที่บันทึกลักษณะการทำงานของบริการ และวางลงใน hf.aspx
(4) ใส่โค้ดที่แสดงในวงกลมสีแดงในรูปที่ 8-19 ลงในเหตุการณ์ทริกเกอร์การโหลดเพจ page_load ในหน้า hf.aspx
รูปที่ 8-19 ใส่โค้ดลงในเหตุการณ์ทริกเกอร์การโหลดเพจ h page_load
(5) ค้นหาโค้ดต้นฉบับของรูปแบบ yhplfrm แล้วย้ายไปไว้หน้าแท็ก ztre ของฟอร์ม ผลลัพธ์จะแสดงในรูปที่ 8-20
รูปที่ 8-20 ย้ายป้ายกำกับของแบบฟอร์ม yhplfrm
(6) ใส่โค้ดที่แสดงในวงกลมสีแดงในรูปที่ 8-21 หน้าป้าย Hftab ของแบบฟอร์ม
รูปที่ 8-21 ใส่โค้ดก่อนแท็ก Hftab ของตาราง
(7) ย้ายฟอร์มแท็กปิด yhplfrm </form> หลังแท็ก ztre ของตาราง และใส่โค้ดที่แสดงในวงกลมสีแดงในรูปที่ 8-22 หลังแท็ก Hftab ของตาราง
รูปที่ 8-22 ใส่โค้ดหลังป้าย Hftab ของตาราง
เพื่อเตือน: ยังมีปัญหาในการล็อกเอาต์ของผู้ดูแลระบบ ซึ่งปล่อยให้ผู้อ่านใช้สมอง เพื่อเป็นการเตือนความจำ เพียงตั้ง ค่า session("GLY") เป็นค่าว่างหรือสตริงว่าง