j'utilise la technique suivante ...PHP - faire session expirent après X minutes
De la login.php
la forme des messages à la page check.php
où je fais
<?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 la page loggedin.php
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é quand je tape directement l'url localhost\myProject\loggedin.php
il affiche la page ... ce qui est parfaitement logique car la session a commencé
ce que je veux mettre en œuvre est
- L'URL directe \ Session fonctionne pendant 10 minutes après que la session est terminée \ a expiré \ a expiré et l'utilisation doit se connecter à nouveau et peut obtenir le même identifiant de session, mais au bout de 10 minutes d'utilisation ne sera pas en mesure de naviguer avec la même session
QU'EST-CE QUE DOIS-JE fAIRE OU eN SAVOIR
Voir [Comment puis-je expirer une session PHP après 30 minutes?] (Http://stackoverflow.com/questions/520237/how-do-i-expire-a-php-session-after-30-minutes) – Gumbo
Je sais C'est une question très ancienne, mais ceci est un résultat important pour plusieurs recherches de session dans Google. Toute personne lisant ceci devrait être conscient que le code dans la question est extrêmement peu sûr et susceptible d'injection SQL. Nous ne voudrions pas que les débutants Googling prennent de mauvaises habitudes. :-) Cette question sur SO devrait vous aider si vous voulez en savoir plus: http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php –