เมื่อไม่กี่วันก่อน บล็อกของฉันเต็มไปด้วยความคิดเห็นที่เป็นสแปม หลายสิบความคิดเห็น ฉันไม่เคยประสบกับสถานการณ์เช่นนี้เลยตั้งแต่ฉันสร้างเว็บไซต์มาเป็นเวลานาน ฉันโทษตัวเองที่ไม่เพิ่มฟังก์ชันรหัสยืนยัน เพื่อป้องกันการถูกโจมตีอีกครั้ง จำเป็นต้องมีโปรแกรมกรองรหัสยืนยัน ฉันค้นหาข้อมูลบางอย่างบนอินเทอร์เน็ตและรู้สึกว่าไม่สะดวกที่จะใช้โค้ดที่คนอื่นเขียน ฉันไม่สามารถเขียนโค้ดที่ซับซ้อนด้วยตัวเองได้ โดยเฉพาะโค้ดที่สร้างรูปภาพ ฉันลองวิธีการต่างๆ บนอินเทอร์เน็ตแล้วแต่ไม่ได้ผล ฉันไม่รู้ว่าทำไม บางทีฉันอาจไม่มีประสบการณ์ มันให้ความรู้สึกค่อนข้างซับซ้อน
ท้ายที่สุดแล้ว ฉันใช้เวลาหนึ่งชั่วโมงในการเขียนโค้ดยืนยันที่เรียบง่ายสุดๆ ฮ่าๆ มันเป็นรหัสต้นฉบับจริงๆ มันถูกสร้างขึ้นแบบสุ่ม เนื่องจากมันค่อนข้างง่าย จึงไม่สามารถจัดการกับซอฟต์แวร์การโพสต์ที่ทรงพลังเหล่านั้นได้ แต่ก็ดีกว่าไม่มีอะไรเลย หลังจากใส่รหัสยืนยันแล้ว ฉันสังเกตมันมาหลายวันแล้วและไม่เห็นสแปมเลย มันน่าจะได้ผลนะ 555
ตัวอย่าง:
======show.asp======
คัดลอกรหัสรหัสดังต่อไปนี้:
-
สุ่ม
randm=Int((9000*rnd)+1000) สุ่มสร้างรหัสตัวเลข 4 หลัก
-
รหัสยืนยัน: <INPUT name=yzm id=netadd size=4 maxlength=4> <%=randm%> นี่คือกล่องข้อความ และมีการเรียกฟังก์ชันที่สร้างแบบสุ่มอยู่ข้างๆ
รหัส js นี้ใช้เพื่อตรวจสอบว่ารหัสยืนยันที่ป้อนนั้นถูกต้องหรือไม่
คัดลอกรหัสรหัสดังต่อไปนี้:
<ประเภทสคริปต์=ข้อความ/จาวาสคริปต์>
ฟังก์ชั่น sendForm (obj)
-
ถ้า(obj.yzm.value!=<%=randm%>)
-
การแจ้งเตือน (ข้อผิดพลาดรหัสยืนยัน);
obj.content.โฟกัส();
กลับเท็จ;
-
obj.ส่ง();
กลับเป็นจริง;
-
</สคริปต์>
เพิ่มประโยคนี้ลงในปุ่มตกลง
<INPUT onclick=sendForm(this.form); type=button name=Submit2 value=Add>
ต้องอ่านข้อความสีแดงให้ชัดเจน ถ้าไม่ตรงกัน จะไม่ทำงาน
โดยพื้นฐานแล้วมันง่ายขนาดนั้น จริงๆ แล้วมันสามารถทำให้มันซับซ้อนกว่านี้ได้ แต่ฉันยังไม่ได้คิดเกี่ยวกับมัน ฉันจะทำมันเมื่อไม่มีโพสต์สแปมอีกต่อไป