form_open

Mattepuffo's logo
Login con Codeigniter

Login con Codeigniter

Continua lo studio di questo ottimo framewrok, che probabilmente adotterò per un mio prossimo lavoro.

Oggi vediamo come creare un semplice sistema di login.

Prima di tutto assicuratevi di caricare automaticamente due librerie e due helper; andate in application -> config -> autoload.php:

$autoload['libraries'] = array('database', 'session');
$autoload['helper'] = array('url', 'form');

Poi in application -> config -> config.php potete impostare le sessioni:

$config['sess_cookie_name'] = 'my_session';
$config['sess_expiration'] = 7200;
$config['sess_expire_on_close'] = TRUE;
$config['sess_encrypt_cookie'] = FALSE;
$config['sess_use_database'] = FALSE;
$config['sess_table_name'] = 'my_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update'] = 300;

Oltre al nome della sessione ho anche cambiato il parametro sess_expire_on_close in modo che alla chiusura del browser la sessione si chiuda.

Dopo questa configurazione base passiamo alla view:

<fieldset>
    <legend>Login</legend>
    <?php echo validation_errors(); ?>
    <?php echo form_open('login/dologin'); ?>
    <table>
        <tbody>
            <tr>
                <td>User:</td>
                <td><input type="text" name="username" value="" /></td>
            </tr>
            <tr>
                <td>Password:</td>
                <td><input type="password" name="password" value="" /></td>
            </tr>
            <tr>
                <td></td>
                <td><input type="submit" value="Login" name="submit" /></td>
            </tr>
    </table>
</form>
</fieldset>

Un semplice form che richiama la funzione dologin del nostro controller login.

A questo punto ci rimangono i due punti fonamentali: il controller e il model.