แนะนำ: คำอธิบายโดยละเอียดของฟังก์ชัน Asp Cbool(string) แปลงเป็นค่าบูลีน Cbyte(string) แปลงเป็นค่าประเภทไบต์ Ccur(string) แปลงเป็นค่าประเภทสกุลเงิน Cdate(string) แปลงเป็นค่าประเภทวันล่วงหน้า Cdbl(string) แปลงเป็นค่าความแม่นยำสองเท่า Cint(string ) แปลงเป็นค่าจำนวนเต็ม Clng(string) แปลงเป็นค่าจำนวนเต็มยาว Csng(string) แปลงเป็นค่าความแม่นยำค่าเดียว Cstr(
วัตถุ ASP มี 5 วัตถุใน ASP: คำขอ, การตอบสนอง, เซสชัน, แอปพลิเคชัน, เซิร์ฟเวอร์ ข้อมูลต่อไปนี้จะอธิบายเฉพาะแอตทริบิวต์ของวัตถุที่สามารถใช้ในบทความนี้ได้ สำหรับคุณลักษณะอื่นๆ โปรดดูเนื้อหาที่เกี่ยวข้อง หลักการของวิธีการที่ระบุไว้ในบทความนี้คือ: ตั้งค่าตัวแปรเชิงตรรกะ IsVoted และตรวจสอบค่าของ IsVoted ก่อนที่จะลงคะแนนวัตถุแอปพลิเคชันเป็นวัตถุที่จัดการข้อมูลที่ใช้ร่วมกันโดยผู้ใช้ทั้งหมดในแอปพลิเคชัน ASP เฉพาะ กล่าวคือ วัตถุแอปพลิเคชันเป็นวัตถุที่ใช้ร่วมกันโดยเว็บเพจทั้งหมดบนเครื่องที่เชื่อมต่อเครือข่ายทั้งหมด ตัวแปรที่กำหนดและตั้งค่าโดยออบเจ็กต์แอปพลิเคชันนั้นสามารถเข้าถึงได้จากทุกหน้าเว็บสำหรับผู้ใช้ทุกคน คุณสามารถใช้ออบเจ็กต์ Application เพื่อกำหนดตัวแปรและเปลี่ยนค่าของตัวแปรได้ รูปแบบไวยากรณ์จะเป็นดังนี้: Application (ชื่อตัวแปร) = expression สามารถอ้างอิงผ่าน Application (ชื่อตัวแปร) ในไฟล์ .asp แอปพลิเคชันจะบันทึกค่าของตัวแปรทางฝั่งเว็บเซิร์ฟเวอร์
อ็อบเจ็กต์เซสชันใช้เพื่อจัดการข้อมูลสำหรับผู้ใช้รายเดียว และตัวแปรเซสชันจะถูกเรียกระหว่างเพจเท่านั้น (นั่นคือ ภายในเซสชัน) ตัวแปรเซสชันเป็นแบบส่วนตัว และการเปลี่ยนแปลงค่าของตัวแปรในเซสชันหนึ่งจะไม่ส่งผลต่อค่าของตัวแปรที่มีชื่อเดียวกันในอีกเซสชันหนึ่ง ออบเจ็กต์ Session ยังบันทึกค่าตัวแปรทางฝั่งเซิร์ฟเวอร์ด้วย แต่ตำแหน่งที่บันทึกแต่ละเซสชันจะแตกต่างกัน เนื่องจากเซสชันเป็นแบบส่วนตัว จึงมีตัวแปร IsVoted มากเท่ากับที่มีออบเจ็กต์เซสชัน และไม่มีความสัมพันธ์ระหว่างตัวแปรเหล่านี้
ออบเจ็กต์คุกกี้ไม่สามารถอยู่ได้โดยลำพัง โดยจะแนบไปกับออบเจ็กต์คำขอและการตอบกลับ เมื่อใช้ออบเจ็กต์ดังกล่าว จะต้องเพิ่มคำขอหรือการตอบสนองก่อนคุกกี้ เช่นเดียวกับแอปพลิเคชันและเซสชัน คุกกี้ยังสามารถบันทึกค่าของตัวแปรได้ แต่คุกกี้จะบันทึกเฉพาะค่าของตัวแปรบนไคลเอนต์เบราว์เซอร์เท่านั้น ตัวแปรที่กำหนดด้วยคุกกี้จะมีแอตทริบิวต์: สามารถตั้งค่าระยะเวลาการใช้งานของตัวแปรคุกกี้ได้ และเมื่อตั้งค่าระยะเวลาการใช้งานแล้ว ผู้ใช้ทุกคนที่เข้าสู่ระบบจากเครื่องเดียวกันจะสามารถแชร์ตัวแปรคุกกี้ได้ จะมีระยะเวลาหนึ่งก่อนที่คุณจะสามารถลงคะแนนได้อีกครั้ง
อ็อบเจ็กต์เซิร์ฟเวอร์ทำงานบางอย่างที่ต้องประมวลผลโดยเซิร์ฟเวอร์ WWW เป็นหลัก ในบทความนี้ เราใช้ Request.ServerVariables เพื่ออ่านที่อยู่ IP ของไคลเอ็นต์ในตัวแปรสภาพแวดล้อมของเซิร์ฟเวอร์ และกำหนดระยะเวลาที่จะใช้เวลานานสำหรับ IP เดียวกัน ที่อยู่ที่จะลงคะแนนอีกครั้งตามที่อยู่ IP
ไฟล์ Global.asa ดำเนินงานการกำหนดและการกำหนดค่าเริ่มต้นของตัวแปรและไฟล์ที่แบ่งใช้ให้เสร็จสมบูรณ์ ไฟล์ Global.asa จะต้องอยู่ในไดเร็กทอรีรากของแอปพลิเคชัน ASP แอปพลิเคชัน ASP สามารถมีไฟล์ Global.asa ได้เพียงไฟล์เดียวเท่านั้น Global.asa มีสี่เหตุการณ์: Application_OnStart, Application_OnEnd, Session_OnStart และ Session_OnEnd เรากำหนดและเริ่มต้นตัวแปร Application และตัวแปร Session ในเหตุการณ์ Application_OnStart และ Session_OnStart เพื่อให้สามารถอ่านตัวแปรเหล่านี้ได้ในหน้าเว็บในอนาคต ASP อ่านเนื้อหาของ Global.asa ภายใต้สถานการณ์ต่อไปนี้:
1. หลังจากที่เว็บเซิร์ฟเวอร์เริ่มทำงาน คำขอแรกจะถูกสร้างขึ้นเพื่อเรียกไฟล์ .asp ใดๆ ในแอปพลิเคชัน ASP
2. ผู้ใช้ที่ไม่ได้อยู่ในสถานะเซสชันร้องขอให้เรียกไฟล์ .asp ของแอปพลิเคชัน ASP
วิธีที่ 1: การใช้วัตถุเซสชัน
ตั้งค่าตัวแปรโลจิคัล IsVoted ในเหตุการณ์ Session_OnStart ของ Global.asa ค่าเริ่มต้นคือ FALSE (แสดงว่ายังไม่มีการลงคะแนน) หลังจากการลงคะแนน ให้เปลี่ยนค่าของ IsVoted เป็น TRUE ในโปรแกรม .asp (บ่งชี้ว่ามีการลงคะแนน) ได้ถูกถ่ายแล้ว) ต้องกำหนดมูลค่าของ IsVoted ก่อนการลงคะแนนแต่ละครั้ง หากค่าของ IsVoted เป็น TRUE คุณจะไม่สามารถลงคะแนนได้อีกต่อไป หากค่าเป็น FALSE คุณสามารถลงคะแนนได้
เนื่องจากการใช้ออบเจ็กต์เซสชันจะต้องประสานงานกับฟังก์ชันคุกกี้ของเบราว์เซอร์ ก่อนที่จะตัดสินค่า IsVoted คุณต้องพิจารณาก่อนว่าฟังก์ชันคุกกี้ของเบราว์เซอร์เปิดอยู่หรือไม่ หากปิดอยู่ วิธีการนี้จะไม่ถูกต้อง ดังนั้นในกรณีนี้ จะต้องได้รับข้อความพร้อมท์ และต้องใช้คำสั่ง Response.End เพื่อขัดจังหวะการทำงานของโปรแกรม .asp เพื่อป้องกันการลงคะแนนซ้ำ กระบวนการแสดงในรูปที่ 1:
ฟังก์ชันในการตรวจสอบว่าคุกกี้เปิดอยู่นั้นค่อนข้างซับซ้อนหรือไม่ ขณะนี้มีการให้โค้ดการใช้งานฟังก์ชัน (VBScript) แล้ว
Share: วิเคราะห์โค้ดสำหรับเชื่อมต่อฐานข้อมูลต่างๆ โดยใช้ ADO ขอแนะนำวิธีการเชื่อมต่อ ADO หลายวิธีโดยย่อ: ODBCDSN, ODBCDSN-Less, OLEDBProvider และ MSRemoteProvider 1 ODBCDSN เชื่อมต่อกับ I.DSN oConn.OpenDSN=AdvWorks;_ UID=Admin;_ PWD=; หมายเหตุ: เริ่มต้นจาก MDAC2.1 คุณจะไม่สามารถใช้วิธีนี้ได้อีกต่อไป กล่าวคือ เพียงใส่ชื่อไฟล์ DSN ใน ConnectString
ทั้งหมด 3 หน้า หน้าก่อนหน้า 123 หน้าถัดไป