Los Foros de ASPTutor.com
Home | Perfil | Registrarse | Temas Activos | Miembros | Buscar | FAQ
Usuario:
Password:
 Todos los Foros
 ASP
 Buenas, alguien puede ayudarme?
 Foro Bloqueado  Tema Bloqueado


Autor Temas
polilla
Starting Member


18 Posts
Mensajes - 16 Sep 2004 :  22:04:02  Ver Perfil  Enviar Email
Hola, estoy empezando con asp. No tengo ni idea de lenguajes de lado de servidor, pero he elegido asp para empezar. Ademas, tengo que hacer una web y en algunos apartados que me piden, con html no voy a ningun lado.
A ver si me podriais echar una mano :)
Son varias cosillas, ahi va:

Apartado de login y password - He mirado el codigo en esta misma web y me funciona perfectamente pero querria un poco mas de seguridad, el motivo es que el codigo redirecciona a una web validando el login y pass, pero esa web de redireccion se ve en el codigo. Si le das a ver codigo fuente desde el navegador podrias linkarte a la pagina destino sin logear. Hablando con conocidos me pasadon un codigo en asp en el cual se redireccionaba igual pero no a una url, sino a un campo de la base de datos, y en dicho campo es donde ponias la pagina destino. De este modo, al menos, no apareceria la direccion en el mismo codigo. El tema es que ese codigo no hay manera que me funciona, el navegador me devuelve un error interno de servidor. No se si es que hago mal añadiendo ese campo en la base de datos (le pongo hypervinculo de formato) o es que el mismo codigo tiene algun error. (si necesitais ese codigo, pedidmelo que os lo pegaria). De momento tengo la web con el codigo de ASPtutor y voy cambiando la pagina destino cada dia :/
Por otra parte, el redireccionar a un campo de la base de datos me iria bien ya que podria poner una pagina diferente (si me interesa) dependiendo del log (distintas paginas con precios segun el cliente por ejemplo). Hasta aqui el primer problema jeje voy por el segundo.

Agregar a favoritos - Esto iria vinculado con el anterior punto. El problema de redireccionar asi, es que si el visitante entra en la web y logea, y despues de logear le da por agregar mi pagina a favoritos, estara linkado a esa pagina directamente, por lo que no tendra ninguna utilidad su login y pass. Como he dicho, voy cambiando cada dia la pagina destino, pero claro, luego llega el visitante y "pagina no encontrada" por lo que debe escribir otra vez la direccion de mi dominio (esto queda bastante feo la verdad).
Lo que si se hacer es un link en la misma pagina con JavaScript de Agregar a Favoritos, de modo que si clikea alli se le agregara la pagina que le indique (en este caso mi pagina principal). Hasta ahi perfecto, pero el problema bien si el visitante le da por usar el navegador con Favoritos / Agregar a Favoritos en lugar de pinchar mi link, en ese caso le agrega la pagina que esta viendo en ese momento. Alguna idea?

Por ultimo, y perdonad todo este Quijote tambien querria un contador de visitas. Pero lo quiero oculto, que solo pueda ver yo.
He probado con un monton buscando por otras webs, la mayoria siguen el sistema de crear un archivo txt con el valor 1, y el codigo en teoria deberia sumar 1 a ese valor del archivo txt. Lo abre, le suma 1, lo guarda y lo cierra. Digo en teoria porque no me ha funcionado ninguno :/ no se cual es el problema, luego entro por ftp, me descargo el txt y cuando lo abro sigue habiendo el valor 1, no me ha sumado nada.

Un fin, mil gracias para el que haya teniedo paciencia como para leerse todo esto.

Un saludo

garfieldmhb
Junior Member

Mexico
162 Posts
Posted - 17 Sep 2004 :  07:31:38  Ver perfil  Enviar e-mail
mira este es el codigo segun yo esta en esta web:

<% Response.Buffer = True %>
<%if request.form("usuario")="" then%>
<%else
'eliminamos las posibles comillas de la entrada
'para evitar la introducción de sentencias SQL
usuario=replace(request.form("usuario"),"'","")
password=replace(request.form("password"),"'","")

Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("Actores.mdb"))
set rs = CreateObject("ADODB.Recordset")
sqltxt="Select * from tutabla where usuario='"&usuario&"' and password= '"&password&"'"
'response.write sqltxt
rs.Open sqltxt, conn
if not rs.eof then
' nos ha devuelto un registro, ahora miraremos si es valido
' con ello evitamos el ataque típico SQL
if rs("usuario")=usuario and rs("password")=password then
' si el usuario esta en la base de datos y la password coincide
session(""&rs.Fields("idactor")&""&rs.Fields("seguridad")&"")=1
response.redirect "plasmaprincipal.asp?idusuario="&rs.Fields("idusuario")&""
end if
else
session("autorizacion")=-1

end if
rs.close
set rs=nothing
conn.close
set conn=nothing
if session("autorizacion")=-1 or session("autorizacion")="" then
' no hemos encontrado el registro
' eso indica que el usuario y/o la password son erroneos
response.redirect "login2.asp"
end if

end if
%>

Lo que esta en negrita, es tu redirección recogiendo el id del usuario que tenga en la base de datos (tu deberas cambiar ese dato segun como tengas tu base) despues en cada una de las paginas que quieras que no entren si no estan logeados:

<% if session(""&request.querystring("idusuario")&""<>1 then
response.redirect "logeo.asp"
end if%>

Que los direccionara a la pagina de registro, de esta manera quien intente entrar por url, sea cual sea el link lo mandara automaticamente a la pagina de registro, esto se llaman variables de sesión.

Asegurate de pasar la variable "idusuario" en todas tus paginas que deseas no entren sin registrarse, ya que si se llegara a perder dicha, te mandara automaticamente a que te registres.

Edited by - garfieldmhb on 17 Sep 2004 07:39:22Inicio Pagina

   
 Foro Bloqueado  Tema Bloqueado
Ir a:
Los Foros de ASPTutor.com Los Foros de ASPTutor.com
Ir al principio de la Página

 Imprimir Tema
 

Descargas de manuales¦ Ejemplos de código ¦ Artículos mas visitados ¦ Envía tu articulo ¦ Foros ¦
  Libro de visitas ¦Crea un enlace con ASPTutor 
 

    © 2001-Hasta hoy  Pedro Rufo Martín  contactar