Ver Mensaje Individual
  #11 (permalink)  
Antiguo 01/09/2006, 14:50
edysierra
 
Fecha de Ingreso: febrero-2005
Mensajes: 86
Antigüedad: 20 años, 3 meses
Puntos: 1
Esto es todo el codigo..

Camilo
Te explico como es el funcionamiento: el usuario ya registrado recibió por mail su Nombre de Usuario y el Password. Se le indica una ruta para que acceda Activar la cuenta… de allí entrará en activar.asp
En esta pagina se le pide esos dos datos y lo recoge la pagina conf_act.asp la que contiene el siguiente codigo:

Conf_act.asp

<%

Response.Buffer = True
Dim usuario, user, passw, act, oConn, RS

If Request.Form("usuario") = "" OR Request.Form("passw") = "" then
Response.Write("<BR>")
Response.Write("<BR>")

Response.write "<a href=activar.asp><B><center>Todos los campos son requeridos <br><center> Click Aqui para Volver</B></a>"

Else
usuario = Trim(Request.Form("usuario"))
passw = Trim(Request.Form("passw"))
usuario = Replace(usuario,"'","''")
passw = Replace(passw,"'","''")


'Conectamos a nuestra BD.
Set oConn = Server.CreateObject ("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\..\db\datos.mdb;"



'Seleccionamos de la tabla solo los registros que concuerden con el usuario del Form.
sql = "SELECT * FROM usuarios WHERE Usuario = '"& usuario &"'"
Set RS = Server.CreateObject ("ADODB.RecordSet")
RS.Open sql, oConn

'Si el valor EOF (fin de la tabla elegida) es verdadero, no existe el usuario.
If (RS.EOF = true) then

Response.write "<a href=activar.asp><B><center>El usuario ingresado no existe <br><center> Click Aqui para Volver</B></a>"

Response.Write("<BR>")
Response.Write("<BR>")
'Response.write "<a href=login.asp><B><center>Click Aqui para Ingresar</B></a>"
ElseIf RS.Fields("contrasena") = passw then
Response.Write("<BR>")
Response.Write("<BR>")
Response.Write "Bienvenido <B>"& RS.Fields("usuario") &"</B>"
Response.Write("<BR>")
Response.write "<a href=con_act_2.asp><B><center><center> Click aquí para continuar</B></a>"


user=rs.Fields("Usuario")
session("Usuario") = user


Else 'Otra cosa, seria cuando el password no es la que seleccionamos.
Response.Write("<BR>")
Response.Write("<BR>")
Response.write "<a href=activar.asp><B><center>El password ingresado es inválido <br><center> Click Aqui para Volver</B></a>"

End If

RS.Close
oConn.Close
Set RS = Nothing
Set oConn = Nothing
End If

%>

Al hace clic en Continuar lo llevará a la siguiente pagina:

Con_act_2.asp

Response.Buffer = True

Dim user, rs

user=Session("Usuario")

Set oConn = Server.CreateObject ("ADODB.Connection")
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\webspace\resadmin\mistio\misitio.com\db\ datos.mdb;"

‘Esta parte es la que me pasaste..


SQL="SELECT * FROM usuarios WHERE usuario='"&user&"'"
rs.Open SQL, oConn, 1, 2
'es simple para saber si es no esta activo haz esto:
if rs("activo")="SI" then
response.redirect("error.asp?error=true")
end if

if rs("activo")<> "SI" then
‘Añado un nuevo registro
rs("activo")="SI"
rs.Update
session("usu")=rs("usuario")
rs.close
response.redirect("error.asp?activo=true")
end if
%>


…Y los mensajes de error se transcriben en la siguiente pagina:

error.asp

<%if request.querystring("error")="true" then
response.write("Error, usuario ya activo")
end%>
<%if request.querystring("activo")="true" then
response.write("Su cuenta ha sido activada")
end%>


Bueno, como veras, no es complejo, aun para mis limitados conocimientos, pero tal vez por ello es que cuando se me presenta alguna dificultad como esta, me trabo.
Y desde ya que la gente del Foro es siempre la que me saca adelante.. Gracias Camilo por tu ayuda y espero tus comentarios.

Última edición por edysierra; 28/12/2006 a las 07:49