Forum Discuz!NT mengintegrasikan kode implementasi forum program ASP. Copy kode kodenya sebagai berikut:
Catat kode halaman cookie saat login
<!--#include file=md5.asp--> //File terenkripsi md5 32-bit harus dipanggil.
<%
redupkan Nama Pengguna, Kata Sandi, Pertanyaan, Jawaban, Kedaluwarsa, Verifikasi
Nama Pengguna=ganti(trim(Permintaan.form(Nama Pengguna)),','') //Nama Pengguna
Kata Sandi=ganti(trim(Permintaan.form(Kata Sandi)),','') //Kata sandi pengguna
Pertanyaan=ganti(trim(Permintaan.form(Pertanyaan)),','') //Pertanyaan kata sandi
Jawaban=ganti(trim(Permintaan.form(Jawaban)),','') //Jawaban kata sandi
Kedaluwarsa=replace(trim(Request.form(Expires)),','') //durasi perekaman cookie
Verifikasi=ganti(trim(Permintaan.form(Verifikasi)),','') //Kode verifikasi
//Tambahkan verifikasi pengiriman di sini, seperti xxx tidak boleh kosong atau panjang bidang, dll.
sql=pilih * dari [dnt_users] di mana nama pengguna='&Nama Pengguna' //Demi kenyamanan, saya tidak akan menambahkan fungsi filter di sini. Jika Anda menggunakannya, pastikan untuk menambahkannya, jika tidak maka akan disuntikkan.
setel rs=sambungan.eksekusi(sql)
jika rs.eof maka
Response.Write (<script>alert('Prompt!/n/nKesalahan akun pengguna!');history.back();</script>)
Respon.akhir
kalau tidak
jika rs(kata sandi)<>md5(Kata Sandi) maka
Response.Write (<script>alert('Prompt!/n/nKata sandi pengguna salah!');history.back();</script>)
Respon.akhir
kalau tidak
if rs(detik)<>Jawab kemudian
Response.Write (<script>alert('Prompt!/n/nJawaban aman salah!');history.back();</script>)
Respon.akhir
kalau tidak
Redupkan DES,DESCode
Setel DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&rs(kata sandi),Z143D2VBML) //Z143D2VBML adalah kunci enkripsi DES Anda. Silakan gunakan Notepad untuk membuka file general.config di direktori CONFIG dan temukan baris <Passwordkey>Z846D4VVZL</Passwordkey> kunci, ubah kunci ke file Anda
Tetapkan DES=Tidak Ada
Respon.Cookies(dnt)(userid) = rs(uid)
Respon.Cookies(dnt)(kata sandi) = DESCode
Respon.Cookie(dnt)(tpp) = rs(tpp)
Respon.Cookie(dnt)(ppp) = rs(ppp)
Respon.Cookies(dnt)(pmsound) = rs(pmsound)
Response.Cookies(dnt)(tidak terlihat) = rs(tidak terlihat)
Response.Cookies(dnt)(referer) = indeks.aspx
Respon.Cookies(dnt)(sigstatus) = rs(sigstatus)
Response.Cookies(dnt)(kedaluwarsa) = Kedaluwarsa
jika Kedaluwarsa<>0 maka
Response.Cookies(dnt).Expires = DateAdd(N, Expires, Now())
berakhir jika
Response.Cookies(dnt).Domain = .xxx.com //Ubah nama domain anda, perhatikan tanda
Respon.Cookies(dnt).Secure = False
berakhir jika
berakhir jika
berakhir jika
rs.tutup
atur rs=tidak ada
//Tambahkan di sini untuk mengalihkan atau melakukan operasi lain setelah masuk. Terserah Anda untuk memutuskan.
%>
==================== ============
Kode halaman pendaftaran (status login setelah registrasi)
<!--#include file=md5.asp--> //32 adalah file terenkripsi md5, yang harus dipanggil. File ini tersedia di mana saja, jadi saya tidak akan menyediakannya.
<%
redupkan Nama Pengguna, Kata Sandi, Periksa Kata Sandi, Email, Pertanyaan, Jawab, Verifikasi
Nama Pengguna=ganti(trim(Permintaan.form(Nama Pengguna)),','') //Nama Pengguna
Kata Sandi=ganti(trim(Permintaan.form(Kata Sandi)),','') //Kata sandi pengguna
CheckPassword=replace(trim(Request.form(CheckPassword)),','') //Verifikasi kata sandi
Pertanyaan=ganti(trim(Permintaan.form(Pertanyaan)),','') //Pertanyaan kata sandi
Jawaban=ganti(trim(Permintaan.form(Jawaban)),','') //Jawaban kata sandi
Kedaluwarsa=replace(trim(Request.form(Expires)),','') //durasi perekaman cookie
Verifikasi=ganti(trim(Permintaan.form(Verifikasi)),','') //Kode verifikasi
//Tambahkan verifikasi pengiriman di sini, seperti xxx tidak boleh kosong atau panjang bidang, dll.
sql=pilih * dari [dnt_users] di mana nama pengguna='&Nama Pengguna' //Demi kenyamanan, saya tidak akan menambahkan fungsi filter di sini. Jika Anda menggunakannya, pastikan untuk menambahkannya, jika tidak maka akan disuntikkan.
setel rs=sambungan.eksekusi(sql)
jika bukan rs.eof maka
Response.Write (<script>alert('Prompt!/n/n akun pengguna telah terdaftar!');history.back();</script>)
Respon.akhir
berakhir jika
rs.tutup
atur rs=tidak ada
sql=pilih * dari [dnt_users] di mana Email='&Email' //Untuk kenyamanan, saya tidak akan menambahkan fungsi filter di sini. Jika Anda menggunakannya, pastikan untuk menambahkannya, jika tidak maka akan disuntikkan.
setel rs=sambungan.eksekusi(sql)
jika bukan rs.eof maka
Response.Write (<script>alert('Prompt!/n/n alamat email telah terdaftar!');history.back();</script>)
Respon.akhir
berakhir jika
rs.tutup
atur rs=tidak ada
ip = permintaan.variabel server(http_x_forwarded_for)
jika ip = maka ip = permintaan.variabel server(remote_addr)
sql=masukkan ke [dnt_users] (nama pengguna, nama panggilan, kata sandi, detik, jenis kelamin, adminid,groupid,groupexpiry,extgroupids,regip,joindate,lastip,lastvisit,lastactivity,lastpost,lastpostid,lastposttitle,posts,digestposts,oltime,tayangan halaman,kredit,extcredits1, extcredits2,extcredits3,extcredits4,extcredits5,extcredits6,extcredits7,extcredits8,avatarshowid,email,bday,sigstatus,tpp,ppp,templateid,pmsound,showemail,newsletter,invisible,newpm,newpmcount,accessmasks,onlinestate) nilai ('&Nama Pengguna',' ','&MD5(Kata Sandi)','&Jawaban',0,0,10,0,' ','&ip','&sekarang()','&ip','&sekarang( )' ,'&sekarang()','&sekarang()',0,' ',0,0,0,0,0,'0.00','0.00','0.00','0.00','0.00','0.00','0.00','0.00',0,'&Email', ' ',1,0,0,0,1,1,1,0,1,1,0,1)
setel rs=sambungan.eksekusi(sql)
sql=pilih uid dari [dnt_users] di mana nama pengguna='&Nama Pengguna' //Demi kenyamanan, saya tidak akan menambahkan fungsi filter di sini. Jika Anda menggunakannya, pastikan untuk menambahkannya, jika tidak maka akan disuntikkan.
setel rs=sambungan.eksekusi(sql)
Uid=rs(0)
sql=masukkan ke dalam nilai [dnt_userfields] (uid,avatar,avatarwidth,avatarheight,authtime,authflag) ('&Uid','avatars/common/0.gif',0,0,'&now()',0)
setel rs=sambungan.eksekusi(sql)
sql=perbarui [dnt_statistics] atur totalusers=totalusers+1,lastusername='&Nama Pengguna',lastuserid='&Uid'
setel rs=sambungan.eksekusi(sql)
sql=pilih * dari [dnt_users] di mana nama pengguna='&Nama Pengguna' //Demi kenyamanan, saya tidak akan menambahkan fungsi filter di sini. Jika Anda menggunakannya, pastikan untuk menambahkannya, jika tidak maka akan disuntikkan.
setel rs=sambungan.eksekusi(sql)
jika rs.eof maka
Response.Write (<script>alert('Prompt!/n/nKesalahan akun pengguna!');history.back();</script>)
Respon.akhir
kalau tidak
jika rs(kata sandi)<>md5(Kata Sandi) maka
Response.Write (<script>alert('Prompt!/n/nKata sandi pengguna salah!');history.back();</script>)
Respon.akhir
kalau tidak
Redupkan DES,DESCode
Setel DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&rs(kata sandi),Z143D2VBML) //Z143D2VBML adalah kunci enkripsi DES Anda. Silakan gunakan Notepad untuk membuka file general.config di direktori CONFIG dan temukan baris <Passwordkey>Z846D4VVZL</Passwordkey> kunci, ubah kunci ke file Anda
Tetapkan DES=Tidak Ada
Respon.Cookies(dnt)(userid) = rs(uid)
Respon.Cookies(dnt)(kata sandi) = DESCode
Respon.Cookie(dnt)(tpp) = rs(tpp)
Respon.Cookie(dnt)(ppp) = rs(ppp)
Respon.Cookies(dnt)(pmsound) = rs(pmsound)
Response.Cookies(dnt)(tidak terlihat) = rs(tidak terlihat)
Response.Cookies(dnt)(referer) = indeks.aspx
Respon.Cookies(dnt)(sigstatus) = rs(sigstatus)
Response.Cookies(dnt)(kedaluwarsa) = 0
Response.Cookies(dnt).Domain = .xxx.com //Ubah nama domain anda, perhatikan tanda (titik) di depannya
Respon.Cookies(dnt).Secure = False
berakhir jika
berakhir jika
rs.tutup
atur rs=tidak ada
//Tambahkan pengalihan pasca-registrasi di sini atau tambahkan data pengguna yang disinkronkan ke tabel pengguna lain. Anda dapat mengetahuinya sendiri.
%>
==================== ============
Edit kode halaman (tidak perlu login lagi setelah mengedit kata sandi)
<!--#include file=md5.asp--> //32 adalah file terenkripsi md5, yang harus dipanggil. File ini tersedia di mana saja, jadi saya tidak akan menyediakannya.
<%
redupkan Nama Pengguna, Kata Sandi, Periksa Kata Sandi, Email, Pertanyaan, Jawab, Verifikasi
Nama Pengguna=ganti(trim(Permintaan.form(Nama Pengguna)),','') //Nama Pengguna
Kata Sandi=ganti(trim(Permintaan.form(Kata Sandi)),','') //Kata sandi pengguna
CheckPassword=replace(trim(Request.form(CheckPassword)),','') //Verifikasi kata sandi
Pertanyaan=ganti(trim(Permintaan.form(Pertanyaan)),','') //Pertanyaan kata sandi
Jawaban=ganti(trim(Permintaan.form(Jawaban)),','') //Jawaban kata sandi
Kedaluwarsa=replace(trim(Request.form(Expires)),','') //durasi perekaman cookie
Verifikasi=ganti(trim(Permintaan.form(Verifikasi)),','') //Kode verifikasi
//Tambahkan verifikasi pengiriman di sini, seperti xxx tidak boleh kosong atau panjang bidang, dll.
jika Kata Sandi<> lalu
jika Kata Sandi<>Periksa Kata Sandi lalu
Response.Write (<script>alert('Prompt!/n/nKata sandi verifikasi berbeda dengan kata sandi pengguna!');history.back();</script>)
Respon.akhir
berakhir jika
Kata Sandi=MD5(Kata Sandi)
kalau tidak
Password=U_Password //U_Password adalah kata sandi terenkripsi MD5 32-bit Anda, yang dibacakan selama verifikasi dan digunakan untuk verifikasi di sini.
berakhir jika
jika Jawaban Benar = benar maka
jika Pertanyaan<>0 maka
Jawaban=pertengahan(MD5(Jawaban+MD5(Pertanyaan)),16,8)
kalau tidak
Jawaban=
berakhir jika
kalau tidak
Answer=U_Secques //U_Secques adalah jawaban kata sandi Anda, yang dibacakan saat verifikasi dan digunakan untuk verifikasi di sini.
berakhir jika
ip = permintaan.variabel server(http_x_forwarded_for)
jika ip = maka ip = permintaan.variabel server(remote_addr)
sql=pilih * dari [dnt_users] di mana nama pengguna='&Nama Pengguna' //Demi kenyamanan, saya tidak akan menambahkan fungsi filter di sini. Jika Anda menggunakannya, pastikan untuk menambahkannya, jika tidak maka akan disuntikkan.
setel rs=Samb.eksekusi(Sql)
Jika Rs.eof maka
Response.Write (<script>alert('Prompt!/n/nKesalahan akun pengguna!');history.back();</script>)
Respon.akhir
kalau tidak
sql=pilih * dari [dnt_users] di mana email='&Email' dan nama pengguna<>'&Nama Pengguna' //Demi kenyamanan, saya tidak akan menambahkan fungsi filter di sini. Jika Anda menggunakannya, Anda harus menambahkannya, jika tidak maka akan disuntikkan .
setel rs=sambungan.eksekusi(sql)
jika bukan rs.eof maka
respon.write (<script>alert('Pengingat ramah!/n/n kotak surat telah digunakan!');history.back();</script>)
respon.akhir
kalau tidak
sql=update [dnt_users] set password='&Password',secques='&Answer',email='&Email' di mana nama pengguna='&Nama Pengguna' //Demi kenyamanan, saya tidak akan menambahkan fungsi filter di sini, jika Anda menggunakannya, jadilah tentu plus, jika tidak disuntikkan
setel rs=sambungan.eksekusi(sql)
Setel DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&Password,Z143D2VBML) //Z143D2VBML adalah kunci enkripsi DES Anda. Silakan gunakan Notepad untuk membuka file general.config di direktori CONFIG dan temukan baris <Passwordkey>Z846D4VVZL</Passwordkey>, <Passwordkey> The Bahasa Inggris antara </Passwordkey> adalah kunci Anda, ubah kunci ke salah satu file Anda
Tetapkan DES=Tidak Ada
Respon.Cookies(dnt)(userid) = rs(uid)
Respon.Cookies(dnt)(kata sandi) = DESCode
Respon.Cookie(dnt)(tpp) = rs(tpp)
Respon.Cookie(dnt)(ppp) = rs(ppp)
Respon.Cookies(dnt)(pmsound) = rs(pmsound)
Response.Cookies(dnt)(tidak terlihat) = rs(tidak terlihat)
Response.Cookies(dnt)(referer) = indeks.aspx
Respon.Cookies(dnt)(sigstatus) = rs(sigstatus)
Response.Cookies(dnt)(kedaluwarsa) = 0
Response.Cookies(dnt).Domain = .xxxx.com //Ubah nama domain anda, perhatikan bagian depannya (titik).
Respon.Cookies(dnt).Secure = False
berakhir jika
berakhir jika
rs.tutup
atur rs=tidak ada
//Tambahkan edit di sini dan kemudian arahkan atau tambahkan data pengguna yang disinkronkan ke tabel pengguna lain. Anda dapat mengetahuinya sendiri.
%>
==================== ==============
Keluar dari kode halaman cookie verifikasi
<%
Respon.Cookies(dnt)(userid) =
Respon.Cookies(dnt)(kata sandi) =
Respon.Cookies(dnt)(tpp) =
Respon.Cookies(dnt)(ppp) =
Respon.Cookies(dnt)(pmsound) =
Response.Cookies(dnt)(tidak terlihat) =
Response.Cookies(dnt)(referer) =
Respon.Cookies(dnt)(sigstatus) =
Response.Cookies(dnt)(kedaluwarsa) =
Respon.Cookies(dnt).Kedaluwarsa =
Respon.Cookie(dnt).Domain = .xxx.com
Respon.Cookies(dnt).Secure = False
Response.Write (<script>alert('Prompt! Pengguna/n/n telah keluar dan masuk!');self.opener.location.reload();window.close();</script>)
Respon.akhir
%>
==================== ==============
Verifikasi kode halaman cookie. Ini adalah bagian kode verifikasi yang saya tulis untuk kesederhanaan. Pada dasarnya Anda dapat memodifikasinya sesuai dengan file verifikasi program asp Anda.
%>
Redupkan DES,DESCode
Setel DES=Server.CreateObject(DiscuzNT.DES)
DESCode=DES.Decode(&request.cookies(dnt)(kata sandi),Z143D2VBML) //Z143D2VBML adalah kunci enkripsi DES Anda. Silakan gunakan Notepad untuk membuka file general.config di direktori CONFIG dan temukan baris <Passwordkey>Z846D4VVZL</Passwordkey> kunci, ubah kunci ke file Anda
Tetapkan DES=Tidak Ada
//Berikut ini adalah membaca database untuk memverifikasi apakah cookie Anda benar
redupkan U_UId,U_UserName,U_Password,U_Secques,U_Email
Sql=pilih uid,nama pengguna, kata sandi, detik, email dari [dnt_users] di mana uid='&request.cookies(dnt)(userid)' dan kata sandi='&DESCode' //Demi kenyamanan, saya tidak akan memfilter pengguna cookie dan kata sandi Fungsi , jika Anda menggunakannya, pastikan untuk menambahkannya, jika tidak maka akan dimasukkan, cukup filter beberapa tanda kutip tunggal dan beberapa tanda kutip yang lebih sensitif.
Setel Rs=Samb.eksekusi(Sql)
jika bukan rs.eof maka
pengguna ditemukan = benar
U_UId = Rs(0)
U_Nama Pengguna = Rs(1)
U_Kata Sandi = Rs(2)
U_Detik = Rs(3)
U_Email = Rs(4)
kalau tidak
pengguna ditemukan = salah
berakhir jika
rs.tutup
atur rs=tidak ada
%>