ฟอรัม Discuz!NT รวมโค้ดการใช้งานฟอรัมโปรแกรม ASP คัดลอกรหัสรหัสดังต่อไปนี้:
บันทึกรหัสหน้าคุกกี้เมื่อเข้าสู่ระบบ
<!--#include file=md5.asp--> //ต้องเรียกไฟล์ที่เข้ารหัส md5 แบบ 32 บิต ไฟล์นี้สามารถใช้ได้ทุกที่ ดังนั้นฉันจะไม่จัดเตรียมมันไว้ให้
-
ชื่อผู้ใช้, รหัสผ่าน, คำถาม, คำตอบ, หมดอายุ, ยืนยัน
ชื่อผู้ใช้=แทนที่(trim(Request.form(ชื่อผู้ใช้)),','') //Username
รหัสผ่าน=แทนที่(trim(Request.form(รหัสผ่าน)),','') //รหัสผ่านผู้ใช้
Question=replace(trim(Request.form(Question)),','') //คำถามรหัสผ่าน
Answer=replace(trim(Request.form(Answer)),','') //รหัสผ่านคำตอบ
Expires=replace(trim(Request.form(Expires)),','') // ระยะเวลาการบันทึกคุกกี้
Verify=replace(trim(Request.form(Verify)),','') // รหัสยืนยัน
//เพิ่มการยืนยันการส่งที่นี่ เช่น xxx ไม่สามารถเว้นว่างได้ หรือความยาวของฟิลด์ ฯลฯ
sql=select * from [dnt_users] โดยที่ username='&Username' //เพื่อความสะดวก ฉันจะไม่เพิ่มฟังก์ชัน filter ที่นี่ หากคุณใช้มัน อย่าลืมเพิ่ม ไม่เช่นนั้นมันจะถูกแทรกเข้าไป
ตั้งค่า rs=conn.execute(sql)
ถ้า rs.eof แล้ว
Response.Write (<script>alert('Prompt!/n/nUser account error!');history.back();</script>)
การตอบกลับสิ้นสุด
อื่น
ถ้า rs(รหัสผ่าน)<>md5(รหัสผ่าน) แล้ว
Response.Write (<script>alert('Prompt!/n/nUser รหัสผ่านไม่ถูกต้อง!');history.back();</script>)
การตอบกลับสิ้นสุด
อื่น
ถ้า rs(secques)<>ตอบแล้ว
Response.Write (<script>alert('Prompt!/n/nSafe answer is wrong!');history.back();</script>)
การตอบกลับสิ้นสุด
อื่น
ติ่ม DES, DESCode
ตั้งค่า DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&rs(รหัสผ่าน),Z143D2VBML) //Z143D2VBML คือคีย์เข้ารหัส DES ของคุณ โปรดใช้ Notepad เพื่อเปิดไฟล์ General.config ในไดเร็กทอรี CONFIG และค้นหาบรรทัด <Passwordkey>Z846D4VVZL</Passwordkey> ภาษาอังกฤษระหว่าง <Passwordkey> และ </Passwordkey> คือคุณ คีย์ เปลี่ยนคีย์ไปยังไฟล์ของคุณ
ตั้งค่า DES=ไม่มีอะไร
Response.Cookies(dnt)(รหัสผู้ใช้) = rs(uid)
Response.Cookies(dnt)(รหัสผ่าน) = DESCode
Response.Cookies(dnt)(tpp) = rs(tpp)
Response.Cookies(dnt)(ppp) = rs(ppp)
Response.Cookies (dnt) (pmsound) = rs (pmsound)
Response.Cookies(dnt)(มองไม่เห็น) = rs(มองไม่เห็น)
Response.Cookies(dnt)(ผู้อ้างอิง) = index.aspx
Response.Cookies (dnt) (sigstatus) = rs (sigstatus)
Response.Cookies(dnt)(หมดอายุ) = หมดอายุ
ถ้าหมดอายุ<>0 แล้ว
Response.Cookies(dnt).Expires = DateAdd(N, Expires, Now())
สิ้นสุดถ้า
Response.Cookies(dnt).Domain = .xxx.com //เปลี่ยนเป็นชื่อโดเมนของคุณ โดยจดเครื่องหมาย . (จุด) ไว้ข้างหน้า
Response.Cookies(dnt).Secure = เท็จ
สิ้นสุดถ้า
สิ้นสุดถ้า
สิ้นสุดถ้า
RS.ปิด
ตั้งค่า rs=nothing
//เพิ่มที่นี่เพื่อเปลี่ยนเส้นทางหรือดำเนินการอื่นๆ หลังจากเข้าสู่ระบบ ขึ้นอยู่กับคุณที่จะตัดสินใจ
-
================================================== =========================================
รหัสหน้าลงทะเบียน (สถานะการเข้าสู่ระบบหลังการลงทะเบียน)
<!--#include file=md5.asp--> //32 เป็นไฟล์ที่เข้ารหัส md5 ซึ่งต้องถูกเรียกใช้ ไฟล์นี้สามารถใช้ได้ทุกที่ ดังนั้นฉันจะไม่จัดเตรียมมันไว้ให้
-
ชื่อผู้ใช้, รหัสผ่าน, ตรวจสอบรหัสผ่าน, อีเมล, คำถาม, ตอบ, ยืนยัน
Username=replace(trim(Request.form(Username)),','') //Username
รหัสผ่าน=แทนที่(trim(Request.form(รหัสผ่าน)),','') //รหัสผ่านผู้ใช้
CheckPassword=replace(trim(Request.form(CheckPassword)),','') // การยืนยันรหัสผ่าน
Question=replace(trim(Request.form(Question)),','') //คำถามรหัสผ่าน
Answer=replace(trim(Request.form(Answer)),','') //รหัสผ่านคำตอบ
Expires=replace(trim(Request.form(Expires)),','') // ระยะเวลาการบันทึกคุกกี้
Verify=replace(trim(Request.form(Verify)),','') // รหัสยืนยัน
//เพิ่มการยืนยันการส่งที่นี่ เช่น xxx ไม่สามารถเว้นว่างได้ หรือความยาวของฟิลด์ ฯลฯ
sql=select * from [dnt_users] โดยที่ username='&Username' //เพื่อความสะดวก ฉันจะไม่เพิ่มฟังก์ชัน filter ที่นี่ หากคุณใช้มัน อย่าลืมเพิ่ม ไม่เช่นนั้นมันจะถูกแทรกเข้าไป
ตั้งค่า rs=conn.execute(sql)
ถ้าไม่ใช่ rs.eof แล้ว
Response.Write (<script>alert('Prompt!/n/n user account has been register!');history.back();</script>)
การตอบกลับสิ้นสุด
สิ้นสุดถ้า
RS.ปิด
ตั้งค่า rs=nothing
sql=select * from [dnt_users] โดยที่ Email='&Email' //เพื่อความสะดวก ฉันจะไม่เพิ่มฟังก์ชันตัวกรองที่นี่ หากคุณใช้ อย่าลืมเพิ่ม ไม่เช่นนั้นจะถูกแทรกเข้าไป
ตั้งค่า rs=conn.execute(sql)
ถ้าไม่ใช่ rs.eof แล้ว
Response.Write (<script>alert('Prompt!/n/n email address has been register!');history.back();</script>)
การตอบกลับสิ้นสุด
สิ้นสุดถ้า
RS.ปิด
ตั้งค่า rs=nothing
ip = request.servervariables (http_x_forwarded_for)
ถ้า ip = ดังนั้น ip = request.servervariables(remote_addr)
sql=แทรกลงใน [dnt_users] (ชื่อผู้ใช้,ชื่อเล่น,รหัสผ่าน,secques,เพศ,ผู้ดูแลระบบ,groupid,groupexpiry,extgroupids,regip,joindate,lastip,lastvisit,lastactivity,lastpost,lastpostid,lastposttitle,โพสต์,ไดเจสต์โพสต์,oltime,การดูหน้าเว็บ,เครดิต,extcredits1, extcredits2,extcredits3,extcredits4,extcredits5,extcredits6,extcredits7,extcredits8,avatarshowid,อีเมล,bday,sigstatus,tpp,ppp,templateid,pmsound,showemail,จดหมายข่าว,มองไม่เห็น,newpm,newpmcount,accessmasks,onlinestate) ค่า ('&ชื่อผู้ใช้',' ','&MD5(รหัสผ่าน)','&คำตอบ',0,0,10,0,' ','&ip','&ตอนนี้()','&ip','&ตอนนี้( )' ,'&ตอนนี้()','&ตอนนี้()',0,' ',0,0,0,0,0,'0.00','0.00','0.00','0.00','0.00','0.00','0.00','0.00',0,'&อีเมล', '',1,0,0,0,1,1,1,0,1,1,0,1)
ตั้งค่า rs=conn.execute(sql)
sql=select uid from [dnt_users] โดยที่ username='&Username' //เพื่อความสะดวก ฉันจะไม่เพิ่มฟังก์ชัน filter ที่นี่ หากคุณใช้มัน อย่าลืมเพิ่ม ไม่เช่นนั้นมันจะถูกแทรกเข้าไป
ตั้งค่า rs=conn.execute(sql)
Uid=rs(0)
sql=insert ลงใน [dnt_userfields] (uid,avatar,avatarwidth,avatarheight,authtime,authflag) ค่า ('&Uid','avatars/common/0.gif',0,0,'&now()',0)
ตั้งค่า rs=conn.execute(sql)
sql=update [dnt_statistics] ตั้งค่า Totalusers=totalusers+1,lastusername='&Username',lastuserid='&Uid'
ตั้งค่า rs=conn.execute(sql)
sql=select * from [dnt_users] โดยที่ username='&Username' //เพื่อความสะดวก ฉันจะไม่เพิ่มฟังก์ชัน filter ที่นี่ หากคุณใช้มัน อย่าลืมเพิ่ม ไม่เช่นนั้นมันจะถูกแทรกเข้าไป
ตั้งค่า rs=conn.execute(sql)
ถ้า rs.eof แล้ว
Response.Write (<script>alert('Prompt!/n/nUser account error!');history.back();</script>)
การตอบกลับสิ้นสุด
อื่น
ถ้า rs(รหัสผ่าน)<>md5(รหัสผ่าน) แล้ว
Response.Write (<script>alert('Prompt!/n/nUser รหัสผ่านไม่ถูกต้อง!');history.back();</script>)
การตอบกลับสิ้นสุด
อื่น
ติ่ม DES, DESCode
ตั้งค่า DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&rs(รหัสผ่าน),Z143D2VBML) //Z143D2VBML คือคีย์เข้ารหัส DES ของคุณ โปรดใช้ Notepad เพื่อเปิดไฟล์ General.config ในไดเร็กทอรี CONFIG และค้นหาบรรทัด <Passwordkey>Z846D4VVZL</Passwordkey> ภาษาอังกฤษระหว่าง <Passwordkey> และ </Passwordkey> คือคุณ คีย์ เปลี่ยนคีย์ไปยังไฟล์ของคุณ
ตั้งค่า DES=ไม่มีอะไร
Response.Cookies(dnt)(รหัสผู้ใช้) = rs(uid)
Response.Cookies(dnt)(รหัสผ่าน) = DESCode
Response.Cookies(dnt)(tpp) = rs(tpp)
Response.Cookies(dnt)(ppp) = rs(ppp)
Response.Cookies (dnt) (pmsound) = rs (pmsound)
Response.Cookies(dnt)(มองไม่เห็น) = rs(มองไม่เห็น)
Response.Cookies(dnt)(ผู้อ้างอิง) = index.aspx
Response.Cookies (dnt) (sigstatus) = rs (sigstatus)
Response.Cookies(dnt)(หมดอายุ) = 0
Response.Cookies(dnt).Domain = .xxx.com //เปลี่ยนเป็นชื่อโดเมนของคุณ โดยจดเครื่องหมาย . (จุด) ไว้ข้างหน้า
Response.Cookies(dnt).Secure = เท็จ
สิ้นสุดถ้า
สิ้นสุดถ้า
RS.ปิด
ตั้งค่า rs=nothing
//เพิ่มการเปลี่ยนเส้นทางหลังการลงทะเบียนที่นี่หรือเพิ่มข้อมูลผู้ใช้ที่ซิงโครไนซ์ไปยังตารางผู้ใช้อื่น คุณสามารถเข้าใจได้ด้วยตัวเอง
-
================================================== =========================================
แก้ไขโค้ดหน้า (ไม่ต้องล็อกอินใหม่หลังแก้ไขรหัสผ่าน)
<!--#include file=md5.asp--> //32 เป็นไฟล์ที่เข้ารหัส md5 ซึ่งต้องถูกเรียกใช้ ไฟล์นี้สามารถใช้ได้ทุกที่ ดังนั้นฉันจะไม่จัดเตรียมมันไว้ให้
-
ชื่อผู้ใช้, รหัสผ่าน, ตรวจสอบรหัสผ่าน, อีเมล, คำถาม, ตอบ, ยืนยัน
ชื่อผู้ใช้=แทนที่(trim(Request.form(ชื่อผู้ใช้)),','') //Username
รหัสผ่าน=แทนที่(trim(Request.form(รหัสผ่าน)),','') //รหัสผ่านผู้ใช้
CheckPassword=replace(trim(Request.form(CheckPassword)),','') // การยืนยันรหัสผ่าน
Question=replace(trim(Request.form(Question)),','') //คำถามรหัสผ่าน
Answer=replace(trim(Request.form(Answer)),','') //รหัสผ่านคำตอบ
Expires=replace(trim(Request.form(Expires)),','') // ระยะเวลาการบันทึกคุกกี้
Verify=replace(trim(Request.form(Verify)),','') // รหัสยืนยัน
//เพิ่มการยืนยันการส่งที่นี่ เช่น xxx ไม่สามารถเว้นว่างได้ หรือความยาวของฟิลด์ ฯลฯ
ถ้ารหัสผ่าน<>แล้ว
ถ้ารหัสผ่าน<>ตรวจสอบรหัสผ่านแล้ว
Response.Write (<script>alert('Prompt!/n/nThe รหัสผ่านการตรวจสอบแตกต่างจากรหัสผ่านผู้ใช้!');history.back();</script>)
การตอบกลับสิ้นสุด
สิ้นสุดถ้า
รหัสผ่าน=MD5(รหัสผ่าน)
อื่น
รหัสผ่าน=U_Password //U_Password คือรหัสผ่านที่เข้ารหัส MD5 32 บิตของคุณ ซึ่งจะถูกอ่านในระหว่างการตรวจสอบและใช้สำหรับการตรวจสอบที่นี่
สิ้นสุดถ้า
ถ้า AnswerTrue=true แล้ว
ถ้าคำถาม<>0แล้ว
คำตอบ=กลาง(MD5(ตอบ+MD5(คำถาม)),16,8)
อื่น
ตอบ=
สิ้นสุดถ้า
อื่น
Answer=U_Secques //U_Secques คือคำตอบรหัสผ่านของคุณ ซึ่งจะถูกอ่านในระหว่างการตรวจสอบและใช้สำหรับการตรวจสอบที่นี่
สิ้นสุดถ้า
ip = request.servervariables (http_x_forwarded_for)
ถ้า ip = ดังนั้น ip = request.servervariables(remote_addr)
sql=select * from [dnt_users] โดยที่ username='&Username' //เพื่อความสะดวก ฉันจะไม่เพิ่มฟังก์ชัน filter ที่นี่ หากคุณใช้มัน อย่าลืมเพิ่ม ไม่เช่นนั้นมันจะถูกแทรกเข้าไป
ตั้งค่า rs = Conn.execute (Sql)
ถ้า Rs.eof แล้ว
Response.Write (<script>alert('Prompt!/n/nUser account error!');history.back();</script>)
การตอบกลับสิ้นสุด
อื่น
sql=select * from [dnt_users] โดยที่ email='&Email' และชื่อผู้ใช้<>'&Username' //เพื่อความสะดวก ฉันจะไม่เพิ่มฟังก์ชันตัวกรองที่นี่ หากคุณใช้งาน คุณต้องเพิ่มมัน ไม่เช่นนั้นมันจะถูกแทรกเข้าไป .
ตั้งค่า rs=conn.execute(sql)
ถ้าไม่ใช่ rs.eof แล้ว
response.write (<script>alert('การแจ้งเตือนที่เป็นมิตร!/n/n กล่องจดหมายถูกใช้แล้ว!');history.back();</script>)
การตอบสนองสิ้นสุด
อื่น
sql=update [dnt_users] setpassword='&Password',secques='&Answer',email='&Email' โดยที่ username='&Username' //เพื่อความสะดวกฉันจะไม่เพิ่มฟังก์ชัน filter ที่นี่หากคุณใช้งาน แน่นอนบวกหรือฉีดอย่างอื่น
ตั้งค่า rs=conn.execute(sql)
ตั้งค่า DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&Password,Z143D2VBML) //Z143D2VBML คือคีย์เข้ารหัส DES ของคุณ โปรดใช้ Notepad เพื่อเปิดไฟล์ General.config ในไดเร็กทอรี CONFIG และค้นหาบรรทัด <Passwordkey>Z846D4VVZL</Passwordkey>, <Passwordkey> ภาษาอังกฤษระหว่าง </Passwordkey> คือคีย์ของคุณ เปลี่ยนคีย์เป็นไฟล์ใดไฟล์หนึ่งของคุณ
ตั้งค่า DES=ไม่มีอะไร
Response.Cookies(dnt)(รหัสผู้ใช้) = rs(uid)
Response.Cookies(dnt)(รหัสผ่าน) = DESCode
Response.Cookies(dnt)(tpp) = rs(tpp)
Response.Cookies(dnt)(ppp) = rs(ppp)
Response.Cookies (dnt) (pmsound) = rs (pmsound)
Response.Cookies(dnt)(มองไม่เห็น) = rs(มองไม่เห็น)
Response.Cookies(dnt)(ผู้อ้างอิง) = index.aspx
Response.Cookies (dnt) (sigstatus) = rs (sigstatus)
Response.Cookies(dnt)(หมดอายุ) = 0
Response.Cookies(dnt).Domain = .xxxx.com //เปลี่ยนเป็นชื่อโดเมนของคุณ ให้ความสนใจกับส่วนที่นำหน้า (จุด)
Response.Cookies(dnt).Secure = เท็จ
สิ้นสุดถ้า
สิ้นสุดถ้า
RS.ปิด
ตั้งค่า rs=nothing
//เพิ่มการแก้ไขที่นี่ จากนั้นเปลี่ยนเส้นทางหรือเพิ่มข้อมูลผู้ใช้ที่ซิงโครไนซ์ไปยังตารางผู้ใช้อื่น คุณสามารถคิดออกเองได้
-
================================================== ===========================================
ออกจากโค้ดหน้าคุกกี้การยืนยัน
-
Response.Cookies(dnt)(รหัสผู้ใช้) =
Response.Cookies(dnt)(รหัสผ่าน) =
Response.Cookies(dnt)(tpp) =
Response.Cookies(dnt)(ppp) =
Response.Cookies (dnt) (pmsound) =
Response.Cookies(dnt)(มองไม่เห็น) =
Response.Cookies(dnt)(ผู้อ้างอิง) =
Response.Cookies(dnt)(sigstatus) =
Response.Cookies(dnt)(หมดอายุ) =
Response.Cookies (dnt) หมดอายุ =
Response.Cookies(dnt) โดเมน = .xxx.com
Response.Cookies(dnt).Secure = เท็จ
Response.Write (<script>alert('Prompt! User/n/n has logged out and logged in!');self.opener.location.reload();window.close();</script>)
การตอบกลับสิ้นสุด
-
================================================== ============================================
ตรวจสอบรหัสหน้าคุกกี้ นี่คือรหัสยืนยันที่ฉันเขียนเพื่อความเรียบง่าย โดยพื้นฐานแล้วจะเหมือนกัน คุณสามารถแก้ไขได้ตามไฟล์ยืนยันโปรแกรม asp ของคุณ
-
ติ่ม DES, DESCode
ตั้งค่า DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Decode(&request.cookies(dnt)(รหัสผ่าน),Z143D2VBML) //Z143D2VBML คือคีย์เข้ารหัส DES ของคุณ โปรดใช้ Notepad เพื่อเปิดไฟล์ General.config ในไดเร็กทอรี CONFIG และค้นหาบรรทัด <Passwordkey>Z846D4VVZL</Passwordkey> ภาษาอังกฤษระหว่าง <Passwordkey> และ </Passwordkey> คือคุณ คีย์ เปลี่ยนคีย์ไปยังไฟล์ของคุณ
ตั้งค่า DES=ไม่มีอะไร
//ต่อไปนี้คือการอ่านฐานข้อมูลเพื่อตรวจสอบว่าคุกกี้ของคุณถูกต้องหรือไม่
สลัว U_UId, U_UserName, U_Password, U_Secques, U_Email
Sql=select uid,username,password,secques,email from [dnt_users] โดยที่ uid='&request.cookies(dnt)(userid)' และรหัสผ่าน='&DESCode' //เพื่อความสะดวก ฉันจะไม่กรองคุกกี้ผู้ใช้และรหัสผ่าน Function หากคุณใช้ อย่าลืมเพิ่มเข้าไป ไม่เช่นนั้นมันจะถูกแทรก เพียงกรองเครื่องหมายคำพูดเดี่ยวบางอันและบางอันที่ละเอียดอ่อนกว่านี้ออก
ตั้งค่า Rs=Conn.execute(Sql)
ถ้าไม่ใช่ rs.eof แล้ว
ผู้ใช้ผู้ก่อตั้ง = จริง
U_UId = ฿(0)
U_UserName = ฿(1)
U_Password = ฿(2)
U_Secques = อาร์เอส(3)
U_อีเมล = ฿(4)
อื่น
ผู้ใช้ที่พบ = เท็จ
สิ้นสุดถ้า
RS.ปิด
ตั้งค่า rs=nothing
-