23/10/07, 17:56:26
|
#31 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
Hola chicos, perdon por la espera -si es que alguien estaba esperando- he estado bien ocupado con otros menesteres que me habían impedido continuar con nuestro módulo de usuarios, afortunadamente ya estamos de vuelta, así que recapitulemos:
En las sesiones anteriores escribimos los métodos para autentificar y recuperar los datos de nuestros usuarios dando un id, también agregamos la lógica necesaria a nuestro formulario para autentificar usuarios, y nos quedamos en la creación de la interfaz una vez que nuestros usuarios se "loguearon" correctamente.
Bien, ahora vamos a crear un método que nos regresara un arreglo o como set de datos a través del método getRows, el cuál usaremos para listar a nuestros usuarios, así que sin más, abrimos nuestro archivo lib/usuario.asp y codifiquemos nuestro método Listar:
Código:
Public function Listar(intPagina, intTamanoPagina, strOrdenar)
Dim ObjConn
Dim rs
Dim cmd
Dim param
Dim ds
Dim qry
Set ObjConn = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
Set cmd = Server.CreateObject("ADODB.Command")
qry = "SELECT a.usuario_id, a.usuario_apellido + ', ' + a.usuario_nombre as usuario_nombre_completo, " & _
"a.usuario_activo, " & _
"a.usuario_fecha_edicion FROM tbl_usuario a "
if len(strOrdernar) > 0 then
qry = qry & " ORDER BY " & strOrdenar
else
qry = qry & " ORDER BY a.usuario_apellido "
end if
ObjConn.Open strConnect
cmd.ActiveConnection = ObjConn
cmd.CommandType = adCmdText
cmd.CommandText = qry
rs.CursorType = adOpenStatic
rs.LockType = adLockReadOnly
rs.Open cmd
m_registros_totales = rs.RecordCount
if rs.RecordCount > intTamanoPagina then
rs.PageSize = intTamanoPagina
rs.AbsolutePage = intPagina
m_paginas_totales = rs.PageCount
else
m_paginas_totales = 1
end if
if not rs.EOF then
ds = rs.GetRows(intTamanoPagina, 0)
else
ds = null
end if
ObjConn.Close()
Set rs = Nothing
Set ObjConn = Nothing
Set param = Nothing
Set cmd = Nothing
Listar = ds
End function
Casi nada nuevo, para comenzar agregaremos a nuestra clase las propiedades en negritas, que determinan el número de registros y el número de páginas, esto lo usaremos para paginar nuestro "resultset", a continuación las adiciones:
Código:
private m_registros_totales
private m_paginas_totales
Código:
public property get registros_totales()
registros_totales = m_registros_totales
end property
public property let registros_totales(p_data)
m_registros_totales = p_data
end property
public property get paginas_totales()
paginas_totales = m_paginas_totales
end property
public property let paginas_totales(p_data)
m_paginas_totales = p_data
end property
Código:
Private sub Class_Initialize
m_id = -1
m_uname = ""
m_pwd = ""
m_nombre = ""
m_apellido = ""
m_activo = false
m_fecha_edicion = Cdate("1/1/1800")
m_paginas_totales = 0
m_registros_totales = 0
End sub
Ahora procedermos a explicar en detalle lo nuevo de nuestro método Listar...tomemos un momento para respirar 
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
23/10/07, 22:26:15
|
#32 (permalink)
|
|
Colaborador
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
|
Re: Un módulo de usuarios
 : maistro, perdon por no venir a las clases pasadas, va muy adelantado?? alguna tarea que hacer para recuperar puntos????
 profe, que significa eso que esta a un lado de las funciones _public y _private???
profe... profe... para que dijo que era el MD5????
oigan maistro.... y funciona si lo pongo todo junto.... o debo ponerlo por separado......
pero fuera de hay sin novedad!!

__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
|
|
|
|
24/10/07, 07:55:08
|
#33 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
Cita:
Originalmente publicado por Shiryu_Libra
 : maistro, perdon por no venir a las clases pasadas, va muy adelantado?? alguna tarea que hacer para recuperar puntos????
 profe, que significa eso que esta a un lado de las funciones _public y _private???
profe... profe... para que dijo que era el MD5????
oigan maistro.... y funciona si lo pongo todo junto.... o debo ponerlo por separado......
pero fuera de hay sin novedad!!

Muy mal niño Shiryu_Libra, no ha entendido nada, voy a tener que sancionarlo con puntos negativos de karma.
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
24/10/07, 08:10:05
|
#34 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
Bueno, después de un respiro de unas cuantas horas  vamos a descomponer nuestra función Listar, como ya explicamos anteriormente, esta función se encargará solamente de devolver una estructura ordenada de datos, y nos será muy útil para crear listas de usuarios a lo largo de nuestra aplicacón, pero vamos al código:
Nuestro nuevo método recibe 3 argumentos
1. Número actual de página
2. Número esperado de registros por página
3. Variable alternativa de ordenación
Nótese que este método es público, como ya lo explicamos en su momento, será visible desde el exterior de nuestra clase.
Código:
Public function Listar(intPagina, intTamanoPagina, strOrdenar)
Nuestro query básicamente dice
SELECCIONA
id
apellido ", " nombre
activo
fecha edicion
DE
tbl_usuario
Por default ordenará de acuerdo al apellido, su nuestra variable de ordenamiento tiene algún valor, entonces utilizará esta variable de ordenamiento.
En negritas lo único que es un poco distinto, simplemente concatenamos dos campos para unirlos en uno solo en nuestro resultset, a ese campo le llamaremos usuario_nombre_completo.
Código:
qry = "SELECT a.usuario_id, a.usuario_apellido + ', ' + a.usuario_nombre as usuario_nombre_completo, " & _
"a.usuario_activo, " & _
"a.usuario_fecha_edicion FROM tbl_usuario a "
if len(strOrdernar) > 0 then
qry = qry & " ORDER BY " & strOrdenar
else
qry = qry & " ORDER BY a.usuario_apellido "
end if
Todo el truco de la paginación, está en las líneas siguientes, por favor nota que estamos trabajando con el método GetRows del objeto ADO, el cuál crea un arreglo bidimensional, personalmente me gusta utilizarlo porque elimina el alto consumo de recursos del recordset, y nos da una estructura de datos desconectados, es altamente eficiente, aunque un poco más abstracto que el recordset.
Código:
'Obtenermos la cantidad total de registros devueltos por el recordset
m_registros_totales = rs.RecordCount
'Si la cantidad de registros es mayor al maximo tamaño de la página
if rs.RecordCount > intTamanoPagina then
'Paginamos nuestro recordset
rs.PageSize = intTamanoPagina
rs.AbsolutePage = intPagina
m_paginas_totales = rs.PageCount
else
'solo una pagina
m_paginas_totales = 1
end if
'Si efectivamente hubo un recordset, entonces utilizamos el metodo
'getRows valiendonos de sus argumentos para paginar los resultados.
if not rs.EOF then
ds = rs.GetRows(intTamanoPagina, 0)
else
'no hay registros
ds = null
end if
Cerramos y destruimos todo, devolvemos nuestro set de datos, como verás, la idea es que nuestro método sea tan especializado como sea posible, es decir, a el no le interesa si hay datos o no, ni se encarga de ninguna parte lógica, mas que de devolver páginas de datos.
Código:
ObjConn.Close()
Set rs = Nothing
Set ObjConn = Nothing
Set param = Nothing
Set cmd = Nothing
Listar = ds
Hasta aquí con nuestro método listar, en la siguiente sesión nos enfocaremos a la interfaz de usuarios ya que tenemos los métodos necesarios al menos para desplegar datos.
Saludos
__________________
¡datos...datos...DAATOOOSSS!
Última edición por u_goldman fecha: 24/10/07 a las 08:16:52.
|
|
|
|
29/10/07, 04:38:46
|
#35 (permalink)
|
Registrado: oct 2007
Mensajes: 88
|
Re: Un módulo de usuarios
hola maestro del asp les pido un favor podrian colocar como quedan los codigos definitivos porque trato de seguir el orden pero despues sale admin/login.asp y conponestes/login.asp y eso no se podrian colocarlo completo para seguirlo porfavor con sus nombre muchas gracias....
|
|
|
|
29/10/07, 08:48:27
|
#36 (permalink)
|
Registrado: oct 2007
Mensajes: 88
|
Re: Un módulo de usuarios
hola alguien tiene el codigo completo es que no lo logra seguir lo hice como 3 veces pero me sale error a cada rato si alguien tuviera el codigo completo me lo podria enviar porfavor se lo agradeseria mucho...gabo.hachim@gmail.com
|
|
|
|
29/10/07, 09:14:08
|
#37 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
Hola gabo, no esta terminado el proyecto, pero no deberia enviarte errores si lo has seguido paso a paso, cambiamos ciertas cosas de lugar, quizas nada mas tienes que poner atencion a las rutas de los includes.
P.D. Al final del proyecto colgare el codigo, pero todavia falta un rato.
Saludos
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
29/10/07, 10:03:39
|
#38 (permalink)
|
Registrado: oct 2007
Mensajes: 88
|
Re: Un módulo de usuarios
hola no pasa nada esperare hasta que este terminado todo el proyecto...
muchas gracias.....
|
|
|
|
28/01/08, 15:06:11
|
#39 (permalink)
|
|
Colaborador
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
|
Re: Un módulo de usuarios
 Ticher, estee, ticher...  cuando sera la ultima clase????
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
|
|
|
|
28/01/08, 15:13:06
|
#40 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
 Niño Shiryu_Libra, lo voy a reprobar por preguntón...ustedes disculpen, la verdad es que he estado bien ocupado entre el trabajo y unos desarrollos personales que no he tenido tiempo de retomar esto, estoy esperando a mediados del próximo mes terminar con mis compromisos para poder proseguir, disculpen la demora.
Saludos
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
28/01/08, 16:06:29
|
#41 (permalink)
|
|
Moderador
Registrado: nov 2002
Mensajes: 6.241
|
Re: Un módulo de usuarios
Traducción:
No molesten, que tengo una vida fuera del foro
Ok, seguiremos esperando, pero sentados para no cansarnos
|
|
|
|
28/01/08, 17:54:00
|
#42 (permalink)
|
|
Colaborador
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
|
Re: Un módulo de usuarios
Cita:
Originalmente publicado por u_goldman
 Niño Shiryu_Libra, lo voy a reprobar por preguntón...ustedes disculpen, la verdad es que he estado bien ocupado entre el trabajo y unos desarrollos personales que no he tenido tiempo de retomar esto, estoy esperando a mediados del próximo mes terminar con mis compromisos para poder proseguir, disculpen la demora.
Saludos
por eso decia
Cita:
Originalmente publicado por Myakire
Traducción:
No molesten, que tengo una vida fuera del foro
Ok, seguiremos esperando, pero sentados para no cansarnos
afirmativo, yes , 10-4, ok, ya taz 
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
|
|
|
|
12/02/08, 10:03:22
|
#43 (permalink)
|
Registrado: ene 2008
Ubicación: Siempre sere tu sombra
Mensajes: 31
|
Re: Un módulo de usuarios
Me preguntaba, si este modulo de usuarios, tambien tiene Case Sensitive respecto a los datos ingresados al formulario????
|
|
|
|
12/02/08, 10:52:08
|
#44 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
Nah, dejanos terminarlo primero y después veremos 
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
08/04/08, 10:25:10
|
#45 (permalink)
|
|
Colaborador
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
|
Re: Un módulo de usuarios
Profe... profe... se unio a la huelga del Poli o de la UNAM... que no miro que de clases 
__________________
"Eres parte del problema, parte de la solucion o parte del paisaje"
Un Saludo desde Desierto de Altar, Sonora, MX.
Shiryu_libra
|
|
|
|
08/04/08, 11:20:01
|
#46 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
 SSSSSShhhhhh niño impertinente...ya necesito ponerme a trabajar 
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
08/04/08, 11:23:53
|
#47 (permalink)
|
Registrado: mar 2008
Ubicación: En mi casa
Mensajes: 182
|
Re: Un módulo de usuarios
Me gusto como se viene dando la clase... lastima que no esta terminada... (aún)
Para mi que se olvidó, si seguia dando la clase hasta con el cd booteable de Ubuntu cuando se le rompio el Windows!!
Aunque sea que haga lo prometido:
Cita:
Originalmente publicado por u_goldman
P.D. Al final del proyecto colgare el codigo, pero todavia falta un rato.
...le pone uno coments importantes, y ya se entiende; y esta listo para implementar y personalizar.
Maestro U_G vuelveeeee!!!!! 
|
|
|
|
08/04/08, 11:34:42
|
#48 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
 Es que no he reestablecido mi PC je je je, nah, ya en serio prometo desde la próxima semana dedicarle al menos 30 min. diarios hasta que terminemos.
Un saludo!
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
15/04/08, 11:49:53
|
#49 (permalink)
|
Registrado: mar 2008
Ubicación: En mi casa
Mensajes: 182
|
Re: Un módulo de usuarios
08/04/08:
Cita:
Originalmente publicado por u_goldman
 Es que no he reestablecido mi PC je je je, nah, ya en serio prometo desde la próxima semana dedicarle al menos 30 min. diarios hasta que terminemos.
Un saludo!
15/04/08:
 Hola, solo pasaba a ver como iban las cosas
 
No es que quiera ser molesto ni nada... es que me resulto interesante el tema...
Jejejeje
Soy solo un humilde alumno pidiendo que nos enseñes sensei!!! 
|
|
|
|
15/04/08, 15:59:41
|
#50 (permalink)
|
|
Moderador
Registrado: nov 2002
Mensajes: 6.241
|
Re: Un módulo de usuarios
Bueno, hoy se cumple la semana, lo que significa que a partir de hoy le dedicará 30 minutos diarios, hasta terminar otra entrega, lo que si no dijo es cuánto tiempo le tomará formar otro entrega de su tutorial (aahh que UG tan listo, te dice que si pero no te dice cuándo  )
|
|
|
|
15/04/08, 16:25:18
|
#51 (permalink)
|
|
Moderatroll
Registrado: nov 2002
Mensajes: 6.955
|
Re: Un módulo de usuarios
 Gracias, gracias...en la noche voy a buscar el curso y añadiré alguna cosa, por lo menos lo colgaré de alguna parte -con lo que va- para que llevemos un punto de partida.
También si no les molesta borraré todos los OT ¿ok?
Salud 
__________________
¡datos...datos...DAATOOOSSS!
|
|
|
|
15/04/08, 17:47:35
|
#52 (permalink)
|
|
Moderador
Registrado: nov 2002
Mensajes: 6.241
|
Re: Un módulo de usuarios
Cita:
También si no les molesta borraré todos los OT ¿ok?
uuff, que flojera, pero ya que estamos en eso, pues contribuyamos con uno mas 
|
|
|
|
15/04/08, 18:17:46
|
#53 (permalink)
|
|
Moderador
Registrado: nov 2002
Ubicación: 34.517 S, 58.500 O
Mensajes: 11.962
|
Re: Un módulo de usuarios
Quiero que u_g borre un mensaje mío!!!
__________________
···---···
|
|
|
| |