El foro Discuz!NT integra el código de implementación del foro del programa ASP. Copie el código de código de la siguiente manera:
Registre el código de la página de cookies al iniciar sesión
<!--#include file=md5.asp--> // Se debe llamar al archivo cifrado md5 de 32 bits. Este archivo está disponible en todas partes, por lo que no lo proporcionaré.
<%
dim Nombre de usuario, Contraseña, Pregunta, Respuesta, Vence, Verificar
Nombre de usuario=replace(trim(Request.form(Nombre de usuario)),','') //Nombre de usuario
Contraseña=replace(trim(Request.form(Contraseña)),','') //Contraseña de usuario
Pregunta=reemplazar(trim(Request.form(Pregunta)),','') //Pregunta de contraseña
Respuesta=reemplazar(trim(Solicitud.formulario(Respuesta)),','') //Respuesta de contraseña
Expires=replace(trim(Request.form(Expires)),','') //duración de grabación de cookies
Verify=replace(trim(Request.form(Verify)),','') //Código de verificación
// Agregue verificación de envío aquí, como xxx no puede estar vacío o la longitud del campo, etc.
sql=select * from [dnt_users] donde nombre de usuario = '& nombre de usuario' // Por conveniencia, no agregaré la función de filtro aquí. Si la usa, asegúrese de agregarla, de lo contrario se inyectará.
establecer rs=conn.execute(sql)
si rs.eof entonces
Response.Write (<script>alert('¡Aviso!/n/nError de cuenta de usuario!');history.back();</script>)
Respuesta.fin
demás
si rs(contraseña)<>md5(Contraseña) entonces
Response.Write (<script>alert('¡Pregunta!/n/n¡La contraseña del usuario es incorrecta!');history.back();</script>)
Respuesta.fin
demás
si rs(secques)<>Respuesta entonces
Response.Write (<script>alert('¡Pregunta!/n/n¡La respuesta segura es incorrecta!');history.back();</script>)
Respuesta.fin
demás
DES tenue, código DES
Establecer DES=Servidor.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&rs(contraseña),Z143D2VBML) //Z143D2VBML es su clave de cifrado DES. Utilice el Bloc de notas para abrir el archivo general.config en el directorio CONFIG y busque la línea <Passwordkey>Z846D4VVZL</Passwordkey>. El inglés entre <Passwordkey> y </Passwordkey> es usted. clave, cambie la clave de su archivo
Establecer DES=Nada
Respuesta.Cookies(dnt)(ID de usuario) = rs(uid)
Respuesta.Cookies(dnt)(contraseña) = DESCode
Respuesta.Cookies(dnt)(tpp) = rs(tpp)
Respuesta.Cookies(dnt)(ppp) = rs(ppp)
Respuesta.Cookies(dnt)(pmsound) = rs(pmsound)
Respuesta.Cookies(dnt)(invisible) = rs(invisible)
Respuesta.Cookies(dnt)(referente) = index.aspx
Respuesta.Cookies(dnt)(sigstatus) = rs(sigstatus)
Response.Cookies(dnt)(expires) = Expires
si expira <> 0 entonces
Response.Cookies(dnt).Expires = DateAdd(N, Expires, Now())
terminar si
Response.Cookies(dnt).Domain = .xxx.com //Cambie su nombre de dominio, observe el (punto) delante de él.
Respuesta.Cookies(dnt).Seguro = Falso
terminar si
terminar si
terminar si
rs.cerrar
establecer rs = nada
//Agregue aquí para redirigir o realizar otras operaciones después de iniciar sesión. Depende de usted decidir.
%>
==================================================== ===========================================
Código de la página de registro (estado de inicio de sesión después del registro)
<!--#include file=md5.asp--> //32 es el archivo cifrado md5, que debe llamarse. Este archivo está disponible en todas partes, por lo que no lo proporcionaré.
<%
dim Nombre de usuario, Contraseña, Comprobar contraseña, Correo electrónico, Pregunta, Respuesta, Verificar
Nombre de usuario=replace(trim(Request.form(Nombre de usuario)),','') //Nombre de usuario
Contraseña=replace(trim(Request.form(Contraseña)),','') //Contraseña de usuario
CheckPassword=replace(trim(Request.form(CheckPassword)),','') //Verificación de contraseña
Pregunta=reemplazar(trim(Request.form(Pregunta)),','') //Pregunta de contraseña
Respuesta=reemplazar(trim(Solicitud.formulario(Respuesta)),','') //Respuesta de contraseña
Expires=replace(trim(Request.form(Expires)),','') //duración de grabación de cookies
Verify=replace(trim(Request.form(Verify)),','') //Código de verificación
// Agregue verificación de envío aquí, como xxx no puede estar vacío o la longitud del campo, etc.
sql=select * from [dnt_users] donde nombre de usuario = '& nombre de usuario' // Por conveniencia, no agregaré la función de filtro aquí. Si la usa, asegúrese de agregarla, de lo contrario se inyectará.
establecer rs=conn.execute(sql)
si no rs.eof entonces
Response.Write (<script>alert('¡Pregunta!/n/n cuenta de usuario ha sido registrada!');history.back();</script>)
Respuesta.fin
terminar si
rs.cerrar
establecer rs = nada
sql=select * from [dnt_users] donde Email='&Email' // Por conveniencia, no agregaré la función de filtro aquí. Si la usa, asegúrese de agregarla; de lo contrario, se inyectará.
establecer rs=conn.execute(sql)
si no rs.eof entonces
Response.Write (<script>alert('¡Pregunta!/n/n dirección de correo electrónico ha sido registrada!');history.back();</script>)
Respuesta.fin
terminar si
rs.cerrar
establecer rs = nada
ip = solicitud.servervariables(http_x_forwarded_for)
si ip = entonces ip = request.servervariables(remote_addr)
sql=insertar en [dnt_users] (nombre de usuario, apodo, contraseña, segundos, género, administrador, ID de grupo, expiración de grupo, extgroupids, regip, fecha de unión, lastip, última visita, última actividad, última publicación, último ID de publicación, último título de publicación, publicaciones, publicaciones de resumen, oltime, vistas de página, créditos, créditos ext1, extcredits2,extcredits3,extcredits4,extcredits5,extcredits6,extcredits7,extcredits8,avatarshowid,email,bday,sigstatus,tpp,ppp,templateid,pmsound,showemail,newsletter,invisible,newpm,newpmcount,accessmasks,onlinestate) valores ('&Nombre de usuario',' ','&MD5(Contraseña)','&Respuesta',0,0,10,0,' ','&ip','&now()','&ip','&now( )' ,'&ahora()','&ahora()',0,' ',0,0,0,0,0,'0.00','0.00','0.00','0.00','0.00','0.00','0.00','0.00',0,'&correo electrónico', ' ',1,0,0,0,1,1,1,0,1,1,0,1)
establecer rs=conn.execute(sql)
sql = seleccione uid de [dnt_users] donde nombre de usuario = '& nombre de usuario' // Por conveniencia, no agregaré la función de filtro aquí. Si la usa, asegúrese de agregarla, de lo contrario se inyectará.
establecer rs=conn.execute(sql)
Uid=rs(0)
sql=insertar en [dnt_userfields] (uid,avatar,avatarwidth,avatarheight,authtime,authflag) valores ('&Uid','avatars/common/0.gif',0,0,'&now()',0)
establecer rs=conn.execute(sql)
sql=actualizar [dnt_statistics] establecer usuarios totales=usuarios totales+1,lastusername='&nombre de usuario',lastuserid='&Uid'
establecer rs=conn.execute(sql)
sql=select * from [dnt_users] donde nombre de usuario = '& nombre de usuario' // Por conveniencia, no agregaré la función de filtro aquí. Si la usa, asegúrese de agregarla, de lo contrario se inyectará.
establecer rs=conn.execute(sql)
si rs.eof entonces
Response.Write (<script>alert('¡Aviso!/n/nError de cuenta de usuario!');history.back();</script>)
Respuesta.fin
demás
si rs(contraseña)<>md5(Contraseña) entonces
Response.Write (<script>alert('¡Pregunta!/n/n¡La contraseña del usuario es incorrecta!');history.back();</script>)
Respuesta.fin
demás
DES tenue, código DES
Establecer DES=Servidor.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&rs(contraseña),Z143D2VBML) //Z143D2VBML es su clave de cifrado DES. Utilice el Bloc de notas para abrir el archivo general.config en el directorio CONFIG y busque la línea <Passwordkey>Z846D4VVZL</Passwordkey>. El inglés entre <Passwordkey> y </Passwordkey> es usted. clave, cambie la clave de su archivo
Establecer DES=Nada
Respuesta.Cookies(dnt)(ID de usuario) = rs(uid)
Respuesta.Cookies(dnt)(contraseña) = DESCode
Respuesta.Cookies(dnt)(tpp) = rs(tpp)
Respuesta.Cookies(dnt)(ppp) = rs(ppp)
Respuesta.Cookies(dnt)(pmsound) = rs(pmsound)
Respuesta.Cookies(dnt)(invisible) = rs(invisible)
Respuesta.Cookies(dnt)(referente) = index.aspx
Respuesta.Cookies(dnt)(sigstatus) = rs(sigstatus)
Respuesta.Cookies(dnt)(expires) = 0
Response.Cookies(dnt).Domain = .xxx.com //Cambie su nombre de dominio, observe el (punto) delante de él.
Respuesta.Cookies(dnt).Seguro = Falso
terminar si
terminar si
rs.cerrar
establecer rs = nada
// Agregue aquí la redirección posterior al registro o agregue datos de usuario sincronizados a otra tabla de usuarios. Puede resolverlo usted mismo.
%>
==================================================== ===========================================
Editar código de página (no es necesario iniciar sesión nuevamente después de editar la contraseña)
<!--#include file=md5.asp--> //32 es el archivo cifrado md5, que debe llamarse. Este archivo está disponible en todas partes, por lo que no lo proporcionaré.
<%
dim Nombre de usuario, Contraseña, Comprobar contraseña, Correo electrónico, Pregunta, Respuesta, Verificar
Nombre de usuario=replace(trim(Request.form(Nombre de usuario)),','') //Nombre de usuario
Contraseña=replace(trim(Request.form(Contraseña)),','') //Contraseña de usuario
CheckPassword=replace(trim(Request.form(CheckPassword)),','') //Verificación de contraseña
Pregunta=reemplazar(trim(Request.form(Pregunta)),','') //Pregunta de contraseña
Respuesta=reemplazar(trim(Solicitud.formulario(Respuesta)),','') //Respuesta de contraseña
Expires=replace(trim(Request.form(Expires)),','') //duración de grabación de cookies
Verify=replace(trim(Request.form(Verify)),','') //Código de verificación
// Agregue verificación de envío aquí, como xxx no puede estar vacío o la longitud del campo, etc.
si Contraseña<> entonces
si Contraseña<>VerificarContraseña entonces
Response.Write (<script>alert('¡Pregunta!/n/n¡La contraseña de verificación es diferente de la contraseña del usuario!');history.back();</script>)
Respuesta.fin
terminar si
Contraseña=MD5(Contraseña)
demás
Contraseña=U_Password //U_Password es su contraseña cifrada MD5 de 32 bits, que se lee durante la verificación y se utiliza para la verificación aquí.
terminar si
si RespuestaVerdadero=verdadero entonces
si la pregunta <>0 entonces
Respuesta=media(MD5(Respuesta+MD5(Pregunta)),16,8)
demás
Respuesta =
terminar si
demás
Answer=U_Secques //U_Secques es la respuesta de tu contraseña, que se lee durante la verificación y se utiliza para la verificación aquí.
terminar si
ip = solicitud.servervariables(http_x_forwarded_for)
si ip = entonces ip = request.servervariables(remote_addr)
sql=select * from [dnt_users] donde nombre de usuario = '& nombre de usuario' // Por conveniencia, no agregaré la función de filtro aquí. Si la usa, asegúrese de agregarla, de lo contrario se inyectará.
establecer rs=Conn.execute(Sql)
Si Rs.eof entonces
Response.Write (<script>alert('¡Aviso!/n/nError de cuenta de usuario!');history.back();</script>)
Respuesta.fin
demás
sql=select * from [dnt_users] donde email='&Email' y nombre de usuario<>'&Username' // Por conveniencia, no agregaré la función de filtro aquí. Si la usa, debe agregarla; de lo contrario, se inyectará. .
establecer rs=conn.execute(sql)
si no rs.eof entonces
respuesta.write (<script>alert('¡Recordatorio amistoso!/¡Se ha utilizado n/n buzón!');history.back();</script>)
respuesta.fin
demás
sql=update [dnt_users] set contraseña='&Contraseña',secques='&Answer',email='&Email' donde nombre de usuario='&Nombre de usuario' // Por conveniencia, no agregaré la función de filtro aquí, si la usa, sea seguro plus, de lo contrario inyectado
establecer rs=conn.execute(sql)
Establecer DES=Servidor.CreateObject(DiscuzNT.DES)
DESCode=DES.Encode(&Password,Z143D2VBML) //Z143D2VBML es su clave de cifrado DES. Utilice el Bloc de notas para abrir el archivo general.config en el directorio CONFIG y busque la línea <Passwordkey>Z846D4VVZL</Passwordkey>, <Passwordkey>. Inglés entre </Passwordkey> es tu clave, cambia la clave a la de tu archivo
Establecer DES=Nada
Respuesta.Cookies(dnt)(ID de usuario) = rs(uid)
Respuesta.Cookies(dnt)(contraseña) = DESCode
Respuesta.Cookies(dnt)(tpp) = rs(tpp)
Respuesta.Cookies(dnt)(ppp) = rs(ppp)
Respuesta.Cookies(dnt)(pmsound) = rs(pmsound)
Respuesta.Cookies(dnt)(invisible) = rs(invisible)
Respuesta.Cookies(dnt)(referente) = index.aspx
Respuesta.Cookies(dnt)(sigstatus) = rs(sigstatus)
Respuesta.Cookies(dnt)(expires) = 0
Response.Cookies(dnt).Domain = .xxxx.com //Cambie a su nombre de dominio, preste atención a la parte inicial (punto).
Respuesta.Cookies(dnt).Seguro = Falso
terminar si
terminar si
rs.cerrar
establecer rs = nada
// Agregue edición aquí y luego redirija o agregue datos de usuario sincronizados a otra tabla de usuarios. Puede resolverlo usted mismo.
%>
==================================================== =============================================
Salir del código de la página de cookies de verificación
<%
Respuesta.Cookies(dnt)(id de usuario) =
Respuesta.Cookies(dnt)(contraseña) =
Respuesta.Cookies(dnt)(tpp) =
Respuesta.Cookies(dnt)(ppp) =
Respuesta.Cookies(dnt)(pmsound) =
Respuesta.Cookies(dnt)(invisibles) =
Respuesta.Cookies(dnt)(referente) =
Respuesta.Cookies(dnt)(sigstatus) =
Respuesta.Cookies(dnt)(expires) =
Respuesta.Cookies(dnt).Expira =
Respuesta.Cookies(dnt).Dominio = .xxx.com
Respuesta.Cookies(dnt).Seguro = Falso
Response.Write (<script>alert('¡Aviso! ¡Usuario/n/n ha cerrado sesión y ha iniciado sesión!');self.opener.location.reload();window.close();</script>)
Respuesta.fin
%>
==================================================== ===============================================
Verifique el código de la página de cookies. Este es un código de verificación que escribí para simplificar. Son básicamente iguales. Puede modificarlo de acuerdo con el archivo de verificación de su programa ASP.
%>
DES tenue, código DES
Establecer DES=Servidor.CreateObject(DiscuzNT.DES)
DESCode=DES.Decode(&request.cookies(dnt)(contraseña),Z143D2VBML) //Z143D2VBML es su clave de cifrado DES. Utilice el Bloc de notas para abrir el archivo general.config en el directorio CONFIG y busque la línea <Passwordkey>Z846D4VVZL</Passwordkey>. El inglés entre <Passwordkey> y </Passwordkey> es usted. clave, cambie la clave de su archivo
Establecer DES=Nada
//Lo siguiente es leer la base de datos para verificar si tus cookies son correctas
tenue U_UId, U_Nombre de usuario, U_Contraseña, U_Secques, U_Email
Sql=select uid,nombre de usuario,contraseña,secques,correo electrónico de [dnt_users] donde uid='&request.cookies(dnt)(userid)' and contraseña='&DESCode' //Por conveniencia, no filtraré cookies de usuarios ni contraseñas Función , si lo usa, asegúrese de agregarlo; de lo contrario, se inyectará. Simplemente filtre algunas comillas simples y algunas más sensibles.
Establecer Rs=Conn.execute(Sql)
si no rs.eof entonces
usuario encontrado = verdadero
U_UId = Rs(0)
U_Nombre de usuario = Rs(1)
U_Contraseña = Rs(2)
U_Secques = Rs(3)
U_correo electrónico = Rs(4)
demás
usuario encontrado = falso
terminar si
rs.cerrar
establecer rs = nada
%>