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
StartKill
Lima-Perú