Regresar   Foros del Web > Programación para sitios web > ASP

El registro es Gratis en Foros del Web
Respuesta
 
Herramientas Buscar en Tema Desplegado
Antiguo 23/10/07, 17:56:26   #31 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
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!
  Responder Con Cita
Antiguo 23/10/07, 22:26:15   #32 (permalink)
Colaborador
Shiryu_Libra tiene algunos puntos positivos de karma
 
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
Contactar con Shiryu_Libra a través de MSN Contactar con Shiryu_Libra a través de Yahoo Send a message via Skype™ to Shiryu_Libra
Shiryu_Libra is offline  
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
  Responder Con Cita
Antiguo 24/10/07, 07:55:08   #33 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
Re: Un módulo de usuarios

Cita:
Originalmente publicado por Shiryu_Libra Ver Mensaje
: 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!
  Responder Con Cita
Antiguo 24/10/07, 08:10:05   #34 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
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.
  Responder Con Cita
Antiguo 29/10/07, 04:38:46   #35 (permalink)
gabo543 ha deshabilitado el Karma
 
Registrado: oct 2007
Mensajes: 88
gabo543 is offline  
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....
  Responder Con Cita
Antiguo 29/10/07, 08:48:27   #36 (permalink)
gabo543 ha deshabilitado el Karma
 
Registrado: oct 2007
Mensajes: 88
gabo543 is offline  
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
  Responder Con Cita
Antiguo 29/10/07, 09:14:08   #37 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
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!
  Responder Con Cita
Antiguo 29/10/07, 10:03:39   #38 (permalink)
gabo543 ha deshabilitado el Karma
 
Registrado: oct 2007
Mensajes: 88
gabo543 is offline  
Re: Un módulo de usuarios

hola no pasa nada esperare hasta que este terminado todo el proyecto...
muchas gracias.....
  Responder Con Cita
Antiguo 28/01/08, 15:06:11   #39 (permalink)
Colaborador
Shiryu_Libra tiene algunos puntos positivos de karma
 
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
Contactar con Shiryu_Libra a través de MSN Contactar con Shiryu_Libra a través de Yahoo Send a message via Skype™ to Shiryu_Libra
Shiryu_Libra is offline  
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
  Responder Con Cita
Antiguo 28/01/08, 15:13:06   #40 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
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!
  Responder Con Cita
Antiguo 28/01/08, 16:06:29   #41 (permalink)
Moderador
Myakire tiene un muy buen nivel de karmaMyakire tiene un muy buen nivel de karmaMyakire tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.241
Contactar con Myakire a través de Yahoo
Myakire is offline  
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
  Responder Con Cita
Antiguo 28/01/08, 17:54:00   #42 (permalink)
Colaborador
Shiryu_Libra tiene algunos puntos positivos de karma
 
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
Contactar con Shiryu_Libra a través de MSN Contactar con Shiryu_Libra a través de Yahoo Send a message via Skype™ to Shiryu_Libra
Shiryu_Libra is offline  
Re: Un módulo de usuarios

Cita:
Originalmente publicado por u_goldman Ver Mensaje
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 Ver Mensaje
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
  Responder Con Cita
Antiguo 12/02/08, 10:03:22   #43 (permalink)
hanzo_hattori_mx tiene un saldo positivo de karma
 
Registrado: ene 2008
Ubicación: Siempre sere tu sombra
Mensajes: 31
hanzo_hattori_mx is offline  
Re: Un módulo de usuarios

Me preguntaba, si este modulo de usuarios, tambien tiene Case Sensitive respecto a los datos ingresados al formulario????
  Responder Con Cita
Antiguo 12/02/08, 10:52:08   #44 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
Re: Un módulo de usuarios

Nah, dejanos terminarlo primero y después veremos
__________________
¡datos...datos...DAATOOOSSS!
  Responder Con Cita
Antiguo 08/04/08, 10:25:10   #45 (permalink)
Colaborador
Shiryu_Libra tiene algunos puntos positivos de karma
 
Registrado: feb 2007
Ubicación: Localhost/Pruebas....
Mensajes: 1.910
Contactar con Shiryu_Libra a través de MSN Contactar con Shiryu_Libra a través de Yahoo Send a message via Skype™ to Shiryu_Libra
Shiryu_Libra is offline  
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
  Responder Con Cita
Antiguo 08/04/08, 11:20:01   #46 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
Re: Un módulo de usuarios

SSSSSShhhhhh niño impertinente...ya necesito ponerme a trabajar
__________________
¡datos...datos...DAATOOOSSS!
  Responder Con Cita
Antiguo 08/04/08, 11:23:53   #47 (permalink)
i_e_s27 tiene algunos puntos positivos de karma
 
Registrado: mar 2008
Ubicación: En mi casa
Mensajes: 182
i_e_s27 is offline  
De acuerdo 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 Ver Mensaje
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!!!!!
  Responder Con Cita
Antiguo 08/04/08, 11:34:42   #48 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
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!
  Responder Con Cita
Antiguo 15/04/08, 11:49:53   #49 (permalink)
i_e_s27 tiene algunos puntos positivos de karma
 
Registrado: mar 2008
Ubicación: En mi casa
Mensajes: 182
i_e_s27 is offline  
Re: Un módulo de usuarios



08/04/08:
Cita:
Originalmente publicado por u_goldman Ver Mensaje
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!!!
  Responder Con Cita
Antiguo 15/04/08, 15:59:41   #50 (permalink)
Moderador
Myakire tiene un muy buen nivel de karmaMyakire tiene un muy buen nivel de karmaMyakire tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.241
Contactar con Myakire a través de Yahoo
Myakire is offline  
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 )
  Responder Con Cita
Antiguo 15/04/08, 16:25:18   #51 (permalink)
Moderatroll
u_goldman tiene un muy buen nivel de karmau_goldman tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.955
u_goldman is offline  
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!
  Responder Con Cita
Antiguo 15/04/08, 17:47:35   #52 (permalink)
Moderador
Myakire tiene un muy buen nivel de karmaMyakire tiene un muy buen nivel de karmaMyakire tiene un muy buen nivel de karma
 
Registrado: nov 2002
Mensajes: 6.241
Contactar con Myakire a través de Yahoo
Myakire is offline  
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
  Responder Con Cita
Antiguo 15/04/08, 18:17:46   #53 (permalink)
Moderador
Al Zuwaga tiene un muy buen nivel de karmaAl Zuwaga tiene un muy buen nivel de karmaAl Zuwaga tiene un muy buen nivel de karmaAl Zuwaga tiene un muy buen nivel de karma
 
Registrado: nov 2002
Ubicación: 34.517 S, 58.500 O
Mensajes: 11.962
Al Zuwaga is offline  
Re: Un módulo de usuarios

Quiero que u_g borre un mensaje mío!!!
__________________
···---···