webForumDet fria alternativet

döda session? sätta sessiontime?

3 svar · 446 visningar · startad av Iceyes

IceyesMedlem sedan apr. 200592 inlägg
#1

Satt o knacka på ett litet script som ska lösenordskydda saker men nu vet jag inte riktigt hur jag ställer in hur länge session ska vara aktiv? och hur man dödar den?

index.php

<?php

session_start();

if (session_is_registered('session')) {
header("Location: index2.php");
die();
}

$mypass = 'test';

if($_POST['send'])
{
 if($_POST['pass'] == $mypass)
  {
    session_register('session');
    header("Location: index2.php");
    exit;
  }
 $error = (empty($_POST['pass']) ? "Du måste ange ett lösenord<br><br>" : "Du angav fel lösenord<br><br>");
}

?>

annan_sida.php

<?
session_start();

if (!session_is_registered('session')) {
echo "Din session existerar inte [b][red]...[/red][/b]";
die();
} 

?>

Redigerat med anledning av webForums regler §4.
Synpunkter angående detta beslut, ta kontakt med Peeer alternativt forumledare@webforum.nu.

Peeer
Utvecklingsledare, webForum

MatteMedlem sedan aug. 20002 975 inlägg
#2

Med default-inställningar "dödas" sessionen efter 24 minuters inaktivitet.

Du tar död på sessionen direkt med session_destroy

Sedan bör du inte använda dig av session_register/session_unregister/session_is_registered, utan använd dig av $_SESSION-arrayen:

// För att sätta
$_SESSION['session'] = 'värde';

// För att kontrollera om den finns:
if (isset($_SESSION['session'])) {

// För att ta bort
unset($_SESSION['session']);
IceyesMedlem sedan apr. 200592 inlägg
#3

aha, tack

bassebhuMedlem sedan nov. 20016 480 inlägg
#4

Tjusigt meddelande om man inte är inloggad!

132 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)