Página 1 de 1

Ejemplo Login con Recaptcha

Publicado: Lun Ene 06, 2025 9:06 pm
por administrador
Este ejemplo muestra como hacer un login con recpatcha

Código: Seleccionar todo

<?php
/*
*   RECAPTCHA :
*   KEY WEB    = xxxxxxxxxxxxxxxxxxxxxxxxx
*   KEY CUSTOM = xxxxxxxxxxxxxxxxxxxxxxxxxxx
*/

include( 'config.php' );

include( TWEB_PATH . 'core.php' );
include( TWEB_PATH . 'core.login.php' );

$oWeb = new TWeb( "TEST LOGIN" );
$oWeb->lAwesome = true; 
$oWeb->SetIcon( IMAGE_PATH . 'user.png' );
// $oWeb->AddCss( CSS_PATH . "login.css" );
$oWeb->Activate();

$oLogin = new TLogin( 'myLogin' );
$oLogin->cTitle           = 'TVALWEB TEST';
$oLogin->cImage           = IMAGE_PATH . 'user.png';
$oLogin->cImageCss        = 'logo-login';
$oLogin->cTextUser        = 'Usuario';
$oLogin->cTextPassword    = 'Clave';
$oLogin->lShowPassword    = false;
$oLogin->cTextLogin       = 'Ingresar';
$oLogin->cTextRegister    = 'Registrar';
$oLogin->cTextForgot      = 'Olvido Contraseña';
$oLogin->bActionLogin     = 'login()';
$oLogin->bActionRegister  = 'register()';
$oLogin->bActionForgot    = "forgot()";
$oLogin->SetCompany( ["1=CENTRAL", "2=LENTEMANIA", "3=ESQUINA"] );
$oLogin->Recaptcha( "xxxxxxxxxxxxxxxxxxxxxxxxx" ); // clave sitio web
$oLogin->Developer( 'Diseño y Desarrollo por', 'tvalweb v1.0', 'creditos()' );
$oLogin->Activate();

$oWeb->End();

?>

<script>

  var oCtrl; 
  var oLogin;

  $(function() {
    oLogin  = new TLogin("myLogin");
    oLogin.show();
    
    function verifica_tablas() {
      MsgServer( path.model + 'verifica_tablas.php' );
    }

  });

  function login() { 	
    var aPar = {};

  	aPar.action   = 'login';
  	aPar.usuario  = oLogin.getuser();
    aPar.clave    = oLogin.getpassword();
    aPar.company  = oLogin.getcompany();
    console.log(aPar);

    if ( aPar.usuario === "demo" && aPar.clave === "1234" ) {
      location.href = './test-modal01.php'; 
    } else {
      JMsgError("Error");
    }
    
  }	
  
  function register() {

    JMsgYesNo( 'Registrar ?', doRegistro );

    function doRegistro() {
      JMsgInfo('function doRegistro');
    }
    
  }

  function forgot() {
    JMsgInfo('Olvido contraseña');
  }

  function creditos() {
    JMsgInfo("tvalweb developer");
  }

</script>
LINK DE PRUEBA

Re: Ejemplo Login con Recaptcha

Publicado: Mié Ene 15, 2025 10:52 am
por Oscar
Buenos días.

Tiene Tlogin la opción bchange

muchas gracias

Re: Ejemplo Login con Recaptcha

Publicado: Mié Ene 15, 2025 11:27 am
por Oscar
Disculpen.

Lo que necesito es llenar $oLogin->SetCompany con información de una base de datos dependiendo de usuario

Gracias.

Re: Ejemplo Login con Recaptcha

Publicado: Mié Ene 15, 2025 4:27 pm
por administrador
Lo que necesito es llenar $oLogin->SetCompany con información de una base de datos dependiendo de usuario
javascript

Código: Seleccionar todo

function login() { 	
    var aPar = {};

  	aPar.action   = 'login';
  	aPar.usuario  = oLogin.getuser();
    aPar.clave    = oLogin.getpassword();
    aPar.company  = oLogin.getcompany();
    console.log(aPar);

    if ( aPar.usuario === "demo" && aPar.clave === "1234" ) {
      location.href = './test_modal01.php'; 
    } else {
      JMsgError("Error");
    }
    
  }	
php

Código: Seleccionar todo

$company = filter_post("company");
// Aqui viene el codigo de conexion segun el valor de la variable company

Re: Ejemplo Login con Recaptcha

Publicado: Jue Ene 16, 2025 10:07 am
por Oscar
Antonio muchas gracias.

Talvez no me explique bien, es esta linea
$oLogin->SetCompany( ["1=CENTRAL", "2=LENTEMANIA", "3=ESQUINA"] );
necesito llenar el arreglo con info de una base de datos según el usuario que ingrese, es decir
ingreso el usuario y debe ir a buscar en la base info que le corresponde a ese usuario.

Saludos

Re: Ejemplo Login con Recaptcha

Publicado: Jue Ene 16, 2025 11:27 am
por Oscar
El resultado de console.log

Object { action: "login", usuario: "1708520144001", clave: "17085", company: ""

company regresa vacio.

Saludos

Re: Ejemplo Login con Recaptcha

Publicado: Jue Ene 16, 2025 11:08 pm
por administrador
Oscar,

La primer regla de seguiridad que se debe tener en cuenta en la web es que no se deben mostrar
contraseñas, ni accesos a base de datos en javascript, esto porque cualquier cristiano puede verlas con solo
dar click en tu app web y vera el codigo fuente. El codigop javascript que es la parte controladora queda siempre
al descuebierto, por eso es tan vulnerable (es por eso que funciona como la parte controladora).
Las contraseñas y accesos a bases de datos se deben hacer desde PHP puro y duro asi como lo hace TVALWEB,
por eso te puese el ejemplo de como acceder a la DB en el archivo PHP.
El resultado de console.log

Object { action: "login", usuario: "1708520144001", clave: "17085", company: ""
company regresa vacio.
Por favor postea el codigo completo de tu ejemplo aqui para poder ayudarte mejor

Re: Ejemplo Login con Recaptcha

Publicado: Vie Ene 17, 2025 10:08 am
por Oscar
Antonio buenos días.

Gracias por las recomendaciones, pero los datos fueron del resultado de console.log fueron editados
asi que no son los reales.

Me voy a tratar de explicar nuevamente , voy a poner el codigo que es de los ejemplos.

oWeb = new TWeb( "TEST LOGIN" );
$oWeb->lAwesome = true;
$oWeb->SetIcon( PATH_IMAGES . 'user.png' );
//$oWeb->AddCss( CSS_PATH . "login.css" );
$oWeb->Activate();

$aRet = array( 0 => '' , 1 => "Dos" );
//console.log('Resultado company');
$oLogin = new TLogin( 'myLogin' );
$oLogin->cTitle = 'Título';
$oLogin->cImage = PATH_IMAGES . 'user.png';
$oLogin->cImageCss = 'logo-login';
$oLogin->cTextUser = 'Usuario';
$oLogin->cTextPassword = 'Clave';
$oLogin->lShowPassword = false;
$oLogin->cTextLogin = 'Ingresar';
$oLogin->cTextRegister = 'Registrar';
$oLogin->cTextForgot = 'Olvido Contraseña';
$oLogin->bActionLogin = 'login()';
$oLogin->bActionRegister = 'register()';
$oLogin->bActionForgot = "forgot()";
////// arreglo de setcompany
$oLogin->

Código: Seleccionar todo

SetCompany
( ["1=CENTRAL", "2=LENTEMANIA", "3=ESQUINA"] );
//////
//$oLogin->Recaptcha( "Aqui se debe agegar la clave que se pide por google recpatcha" ); // clave sitio web
$oLogin->Developer( 'Diseño y Desarrollo por', 'tvalweb v1.0', 'creditos()' );
$oLogin->Activate();
$oWeb->End();

resultados del ingreso de datos
//////
aPar.action = 'login';
aPar.usuario = oLogin.getuser();
aPar.clave = oLogin.getpassword();

////// aqui no regresa ningún valor que si fue seleccionado al ingresar en el login , estos resutados se generan luego de presinar
el botón ingresar.

aPar.company = oLogin.getcompany();

console.log('Resultado company');
console.log(aPar);

Por tanto cuando se mira el resultado de console.log company está vacío

Muchas gracias.

Re: Ejemplo Login con Recaptcha

Publicado: Vie Ene 17, 2025 12:16 pm
por administrador
Hola Oscar,
Revisando el ejemplo, existe un bug en la clase TSelect de BootStrap, voy a corregir el ejemplo
y la libreria, cuando esten listas los subo para que puedas descargarlos y probar

Re: Ejemplo Login con Recaptcha

Publicado: Vie Ene 17, 2025 10:44 pm
por administrador
Oscar, ya puedes bajar la ultima version de talweb. Esta corregida la clase TLogin y el ejemplo
ya funcion tamabien, si usas el inspector de codigo veraz el valor de company.

Comentas como te fue con el cambio