Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   componente BasicAuthentication ¿rigido? (https://www.clubdelphi.com/foros/showthread.php?t=53940)

rev 05-03-2008 10:14:55

componente BasicAuthentication ¿rigido?
 
estoy probando el componente BasicAuthentication de Delphi php para hacer un Login, pero me esta dejando mucho que desear.
¿¿Este componente solo sirve para comprobar un user y pass previamente cargado en sus propiedades?? ¿o de alguna manera permite comprobar en la base de datos lo introducido por el usuario?

Un saludo.

StartKill 05-03-2008 17:00:22

Holas rev

Original de rev

Cita:

estoy probando el componente BasicAuthentication de Delphi php para hacer un Login, pero me esta dejando mucho que desear.
¿¿Este componente solo sirve para comprobar un user y pass previamente cargado en sus propiedades?? ¿o de alguna manera permite comprobar en la base de datos lo introducido por el usuario?
Debo suponer que has visto el ejemplo que viene con D4PHP, ( si no lo has visto está en : C:\Archivos de programa\CodeGear\Delphi for PHP\1.0\vcl\samples\BasicAuthentication\ )

He modificado el ejemplo para la duda que tienes.
Código PHP:

function BassicAuthentication1Authenticate($sender$params){
   
// Validar si la base, la tabla, el motor mysql esta bien esto
   // es solo un ejemplo rapido.
   //
   // Recordarles, que este evento se ejecuta cada vez que
   // presionan el boton "aceptar" del objeto BassicAuthentication1.
   //
   // Si retorna false volverá a cargarse la pantala de autentificacion.
   // si retorna truee continuara la ejecucion a la siguiente linea.
   // de tu llamada ---  $this->BasicAuthentication1->Execute();
   //===========================================
   //rescantado valores de tu tabla de usuarios;
   //==========================================
   
mysql_connect("localhost""root""root");
   
mysql_select_db("tienda_h");
   
$select='select fuser, fclave from users ';
   
$select.='where fuser="'.$params['username'].'"';
   
$select.=' and fclave="'.$params['password'].'"';
   
$result=mysql_query($select);
   if (
$result){
      
$filas =mysql_num_rows($result);
      if (
$filas>0){
         
$row mysql_fetch_array($result);
         if ((
$params['username']==$row['fuser']) && ($params['password']==$row['fclave']))         {
            return(
true);
         }
         else return(
false);
      }
      else return(
false);
   }
   else return(
false);
}

function 
PasswordProtectedPageBeforeShow($sender$params) {
   
// llamar a la pantalla autentificacion de user
    
$this->BasicAuthentication1->Execute();
    echo 
"Perfecto - tienes 100 puntos <br>";


Espero que sirva

Your friend :cool:

StartKill
Lima-Perú

cHackAll 05-03-2008 18:05:54

Cita:

Empezado por rev (Mensaje 270772)
¿o de alguna manera permite comprobar en la base de datos lo introducido por el usuario?

El componente es de autenticacion. El programador debe realizar la consulta de acuerdo a uss necesidades. Seguramente los valores del UserName y Password son retornados como propiedades, pero;

Código PHP:

echo $_SERVER['PHP_AUTH_USER'];
echo 
$_SERVER['PHP_AUTH_PW']; 

Edito PD: No ví el post de StartKill, espero cualfuese te guie :)

rev 06-03-2008 09:05:36

ok, ya me quedo claro como funciona; muchas gracias a los dos por vuestro tiempo.

Un saludo!


La franja horaria es GMT +2. Ahora son las 00:29:52.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi