En este artículo veremos cómo mostrar el nombre del usuario que inició sesión en el sistema, en el encabezado de un menú de aplicación.
Este ejemplo fue creado usando el módulo de seguridad Scritpcase nativo.
1. Primero debemos obtener el inicio de sesión utilizado por el usuario.
Acceda a la aplicación app_login, desde el módulo de seguridad, en la configuración de la aplicación acceda al evento onValidate.En este caso, es posible obtener el inicio de sesión utilizado por el cliente [usr_login].
- if(sc_logged_is_blocked()) { sc_error_exit(); }
- $slogin = sc_sql_injection({login});
- $spswd = sc_sql_injection(hash("md5",{pswd}));
- $sql = "SELECT
- priv_admin,
- active,
- name,
- FROM sec_users
- WHERE login = $slogin
- AND pswd = ".$spswd."";
- sc_lookup(rs, $sql);
- if(count({rs}) == 0)
- {
- sc_log_add('login Fail', {lang_login_fail} . {login});
- sc_logged_in_fail({login});
- sc_error_message({lang_error_login});
- }
- else if({rs[0][1]} == 'Y')
- {
- $usr_login = {login};
- $usr_priv_admin = ({rs[0][0]} == 'Y') ? TRUE : FALSE;
- $usr_name = {rs[0][2]};
- $usr_email = {rs[0][3]};
- sc_set_global($usr_login);
- sc_set_global($usr_priv_admin);
- sc_set_global($usr_name);
- sc_set_global($usr_email);
- }
- else
- {
- sc_error_message({lang_error_not_active});
- sc_error_exit();
- }
2. Luego acceda a la aplicación de menú. Acceda al evento onAplicationInit y use el código a continuación.
- $sql = "SELECT name FROM sec_users WHERE login = '".[]."'";
- sc_lookup(ds,$sql);
- sc_reset_global([var_glob1]);
- [nome] = {ds[0][0]};
3. Luego vaya a Diseño> Encabezado y pie de página y luego asignaremos el valor de la variable [nombre] a una de las variables de encabezado.
4. Luego, al acceder al inicio de sesión, el nombre de usuario se mostrará en el encabezado del menú.