J'utilise la technique suivante...
A partir de la login.php
le formulaire s'affiche sur la page check.php
où je fais cela
<?php
$uzer = $_POST['user_name'];
$pass = $_POST['user_pass'];
require ('DB_connection.php');
$result = mysql_query("SELECT * FROM accounts WHERE user_Name='$uzer' AND user_Pass='$pass'");
if( mysql_num_rows( $result ) > 0)
{
$array = mysql_fetch_assoc($result);
session_start();
$_SESSION['user_id'] = $uzer;
header("Location:loggedin.php");
}
else
{
header("Location:login.php");
}
?>
et sur loggedin.php
page la première chose que je fais est
<?php
session_start();
if( !isset( $_SESSION['user_id'] ) )
{
header("Location:login.php");
}
else
{
echo ( "this session is ". $_SESSION['user_id'] );
//show rest of the page and all
}
?>
mais une fois connecté, lorsque je tape directement l'url localhost\myProject\loggedin.php
il affiche la page... ce qui est tout à fait logique puisque la session a démarré
Ce que je veux mettre en œuvre, c'est
- La session d'URL direct fonctionne pendant 10 minutes, après quoi la session est interrompue. \expired\timed et l'utilisateur doit alors se connecter à nouveau et peut obtenir le même identifiant de session, mais après 10 minutes, l'utilisateur ne pourra plus naviguer avec la même session.
QUE DOIS-JE FAIRE OU APPRENDRE ?