Choose your database:
AnySQL
MySQL
MS SQL Server
PostgreSQL
SQLite
Firebird
Oracle
SQL Anywhere
DB2
MaxDB

Subscribe to our news:
Partners
Testimonials
Simon Greener: "A lot of work went in to designing our application database. PHP Generator allowed us to build a fully functional, professional looking, and functionally powerful web application from that database. It has freed us from worrying about low level code, enabling us to focus on the business requirements of the customer. The support provided is excellent with staff quickly producing answers to questions ranging from newbie to simple or complex. I highly recommend the product".
Olivier Auverlot: "At my work (a universitary computer research laboratory), I'm alone to create all applications and databases. I don't know how I could do all the work without it. It's really a very productive software. I can focus on the database schemas and create quickly the user applications with a minimal amount of code to maintain".

More

Add your opinion

PostgreSQL PHP Generator online Help

Prev Return to chapter overview Next

OnAfterLogin

This event occurs after a user is successfully logged in into the application.

 

Signature:

function OnAfterLogin ($userName, $connection, &$canLogin, &$errorMessage)

 

Parameters:

$userName

The name of the logged user.

$connection

An instance of the EngConnection class.

$canLogin

Specifies whether a user can login (true by default). You can set the value of this parameter to false to disable login even for a user who provided valid credentials.

$errorMessage

A message to be displayed when valid credentials are provided, but $canLogin == false.

 

Example 1:

Among other things this event can be used for tracking the user activity. The code snippet below inserts a new record containing user name and the login time into the 'log' table.

 

$connection->ExecSQL("INSERT INTO log(user_name, log_date) 

  VALUES ('$userName', CURRENT_TIMESTAMP)");

 

Example 2:

The following code allows to redirect users to home page after login.

 

header('Location: index.php');

exit;

 

Example 3:

The following code locks user account if number of failed login attempts exceeded otherwise the counter of failed login attempts is reset.

 

$sql = "SELECT failed_login_attempts FROM phpgen_users WHERE user_name='$userName'"; 

$failedLoginAttempts = $connection->ExecScalarSQL($sql);

if ($failedLoginAttempts >= 3) {

  $canLogin = false;

  $errorMessage = 

    "Dear $userName, your account is locked due to too many failed login attempts.";

} else {

  $sql = "UPDATE phpgen_users SET failed_login_attempts = 0 WHERE user_name='$userName'";

  $connection->ExecSQL($sql);

}

 

 

See also: OnAfterFailedLoginAttempt and OnBeforeLogout events



Prev Return to chapter overview Next