Acceso según el área

Hola, estoy desarrollando una intranet en dreamweaver. Estoy utilizando una base de datos access, y en ella he creado una tabla que tiene 3 campos: usuario, área, password. He definido 3 tipos de áreas. Cuando utilizo "Autentificación de usuarios", solo hay dos opciones, si el usuario y contraseña son correctos va a una página, de lo contrario, va a otra página. Lo que quiero hacer es que se direccione a una página distinta según el área del usuario o que vaya a una página de error si el usuario y contraseña no son válidos. ¿He preguntado en el foro de dreamweaver y me dicen que debo hacer un redireccionamiento con asp. Me podrían indicar como?
Respuesta
En el momento que autentificas el usuario, como en el mismo registro tienes el área, ya sabes a dónde redirigirlo. Si el campo "área" no es la página a la que tiene que ir, sino tan sólo el nombre del área, puedes tener otra tabla donde relaciones áreas con páginas de entrada. Entonces, si ahora la consulta de autentificación es algo así como "SELECT * FROM Usuarios WHERE Usuario=...", podría ser algo así como "SELECT * FROM Usuarios LEFT JOIN Paginas ON Usuarios.Area=Paginas.Area WHERE Usuario=...". Esta consulta te devolvería también la página. Entonces, justo después de autentificar el usuario, y sin que hayas "sacado" nada por pantalla, puedes hacer un:
response.redirect rs("pagina")
Desconozco Dreamweaver (bueno, donde trabajo hay quien lo utiliza, y no sé si será una buena herramienta o no, pero lo que sí hace muy bien es destrozar el código ASP que hay en las páginas que programo).
Para redireccionar a una determinada página en ASP, se utiliza el método Redirect del objeto Response:
<%
Response.Redirect "NuevaPagina.htm"
%>

3 respuestas más de otros expertos

Respuesta
1
Debes hacer una página de redireccionamiento (yo te digo como se hace en ASP). Lo primero es comprobar si el usuario y el passw son correctos, eso lo haces en la página inmediatamente después de donde les pides los datos, entonces en esa misma página haces el redireccionamiento con la función
<%@ Language=VBScript %>
<%
Dim Sarea
Dim Susuario
Dim Spassword
Susuario = Request.Form ("usuario")
Spassword = Request.Form ("password")
Sarea = Trim(UCase(Request("area")))
<% If Sarea = "nombre_del_area" Then Response.Redirect("pagina_especifica_de_ese_area.asp?usuario=" & Request.Form("usuario")&"&password=" & Request.QueryString("password")
End If
%>
Esto es algo básico, pero ahí tienes para empezar. Mi consejo es que, con esto que te he dado, vuelvas a preguntar en el foro de ASP, que hay expertos mejor preparados que yo en ese campo, ya que es con ASP (o PHP), con lo que debes hacer eso. Un saludo y suerte! y... no olvides puntuar!
Esto es más o
Disculpa la insistencia, pero me queda una pequeña dudita, tengo que realizar siempre el comportamiento de servidor "Autentificación de usuarios" o este redireccionamiento se hace a través de una asp
El redireccionamiento es una ASP. Tu haces la función la autentificación una sola vez y, si la autentificación es correcta, entonces haces el redireccionamiento
Respuesta
1
<%
if request("redirect")<>"" then session("redirect")=request("redirect")
end if
if trim(request("desconectar"))="true" then
session("user")=""
end if
if trim(request("user"))<>"" then
if trim(request("user"))="" or trim(request("pass"))="" then
error="Ingrese su Usuario y Contraseña existente"
else
set rs=server.createobject ("adodb.recordset")
sql="select * from tabla_usuarios where user='"&trim(request("user"))&"' and password='"&trim(request("pass"))&"' and disabled=0"
rs.open sql,tu_conexion_odbc
if rs.eof then
error="El Usuario / Contraseña ingresados no corresponden a un user"
else
session("idcliente")=rs("idcliente")
session("user")=rs("user")
if session("redirect")<>"" then session("redirect")="http://tu_sitio.com/tupagina_que_redireccionas.asp"
response.redirect "home.asp"
end if
end if
end if%>
Algo así corrige el código con tu conexión odbc e access y pon el correcto nombre de los campos en la tabla...
;=)
Si pero tené en cuenta que tu servidor donde están alojadas tus páginas que creas con DW debe tener instalado el ASP o bien aceptar páginas *.asp
¿Me explico?
Luego debes investigar un poco como se programa con asp...
En http://www.asptutor.com encontrarás muchos ejemplos...
El comando para redireccinar es Response. Redirect ("tu_pag_error.asp")
Éxitos!
;=)
Respuesta
-1
response.redirect ("http://www.lomasbuscado.net")
Así se hace

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas