Passwords

Hola! Estoy haciendo un cd en el que controlo la entrada a el mediante un nombre de usuario y una contraseña, pero no se como se hace para que me aparezcan *** cuando se escribe la contraseña, ¿hay algún xtra o algo que permita hacer eso? Gracias

1 respuesta

Respuesta
1
Director trae una librería de behaviors y uno de ellos es para la entrada de password. Lo puedes encontrar en la paleta Text, y se llama Password Entry.
Ya pero es que en mi cd hay varios usuarios, cda uno de los cuales tiene su login y su password, que almaceno en una base de datos, y cuando utilizo el behavior password que viene con director, me pide un password primero para comparar o algo así...
En ese caso podrías modificar un poco ese mismo behavior. Yo hice un ejemplo y me funciona. Aquí te lo mando:
Esto es lo que modifique del behavior original
on mTestPass me, vEnter
-- test the password against the entered characters, called when
-- the user hits the ENTER or RETURN key (or whenever a valid
-- key is pressed if the automatic check feature is on); the
-- vEnter parameter is used to weed out automatic tests from
-- those executed by the ENTER/RETURN keys
-- assume test is invalid to start
vTest = compruebaPass(userSprite.member.text,pText)
-- execute the messagen or command assigned to a valid password
if vTest then
do pMessageValid
else
-- if the test has failed, check to see if flag showing
-- ENTER/RETURN key initiated check (or if automatic
-- checking has detected enough characters have been entered)
-- execute invalid passowrd handler/command
if vEnter then
do pMessageInvalid
end if
end if
end mTestPass
compruebaPass es un metodo que esta en un movie behavior, y ahi hago la conexion a BD:
on compruebaPass user, Password
resultado = false
Init xtra"ADOxtra"
--con esto se crea un objeto de tipo connection
conn = CreateObject(xtra"ADOxtra",#connection)
conn.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=P3"
-- abro la conexión
conn.open()
-- con este metodo realizo una consulta a la BD. Devuelve un Recordset
rs = conn.Execute("SELECT UserId FROM p3_Users WHERE Name = '"&user&"' AND Password = '"&Password&"'")
-- de esta forma obtengo los valores del Recordset
resultado = not voidP(rs.fields["UserId"].value)
-- Y por ultimo cierro la conexión
conn.close()
return resultado
end
Algunas notas:
-Tienes que tener el xtras ADOxtra
-en el handler mInitialize del behavior del password agregue pMember.editable = TRUE
-Me gusta más utilizar un Text para el password.
Saludos. Cualquier duda me cuentas

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas