webForumDet fria alternativet
Logga in / Bli medlem

döda session? sätta sessiontime?

PHP

3 svar · 448 visningar · startad av Iceyes

Medlem sedan apr. 200592 inlägg
Trådstart#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

Medlem 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']);
Medlem sedan apr. 200592 inlägg
#3

aha, tack

Medlem sedan nov. 20016 480 inlägg
#4

Tjusigt meddelande om man inte är inloggad!

377 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
125 ms — deklarationer (db)
124 ms — hämta statistik (db)
124 ms — hämta tråd, inlägg och bilagor (db)
127 ms — ändringar (db)