Hoevaak mag je sessions gebruiken?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Rick

Rick

27/10/2007 20:38:00
Quote Anchor link
Hallo,
ik vroeg me af of je sessions zo vaak in een script mag gebruiken als je wilt (bv:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
     if($useractief == 1) {
      $_SESSION['user_id'] = $userid;
      $_SESSION['user_ip'] = $ip;
      $_SESSION['user_status'] = $userstatus;      
      setcookie("cookie_ip", $ip, time() + 365 * 60 * 60 * 24);
      $_SESSION['user_agent'] = $_SERVER['HTTP_USER_AGENT'];
?>

of dat je er maar één per browser mag gebruiken (dus zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$userid
= '1';
$ip = '2';
$userstatus = '3';

      $session = $userid.$ip.$userstatus.$_SERVER['HTTP_USER_AGENT'];
      
$_SESSION['je_moeder'] = $session;
?>

en dat dan natuurlijk op te halen door:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$userid
= '1';
$ip = '2';
$userstatus = '3';

if($_SESSION['je_moeder'] = $userid.$ip.$userstatus.$_SERVER['HTTP_USER_AGENT'] {
bla bla bla..

?>

)

Bvd
Gewijzigd op 01/01/1970 01:00:00 door Rick
 
PHP hulp

PHP hulp

08/05/2024 20:09:53
 
Citroen Anoniem Graag

Citroen Anoniem Graag

27/10/2007 20:53:00
Quote Anchor link
Als ik je vraag goed begrijp moet het antwoord zijn, je mag zoveel sessions gebruikers als je wilt, mits je elke pagina waar je ze gebruikt begint met session-start();
 
Mebus  Hackintosh

Mebus Hackintosh

27/10/2007 20:53:00
Quote Anchor link
Maakt niet uit hoeveel.. Zolang je server/host maar niet gaat zeuren dat de map waar de sessies worden opgeslagen te groot word;)
 
Rick

Rick

27/10/2007 21:13:00
Quote Anchor link
Hmm, ik dacht dat dat misschien een probleem zou zijn voor mijn inlogscript; als ik als admin ingelogd naar /admin wil gaan, word ik doorgestuurd naar mijn hoofdpagina.
In mijn /login script staat het stukje
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php   /////////////////// LOGIN .PHP ////////////////
if($dbpass == $userpass) {
    
             if($useractief == 1) {
      
                 $_SESSION['user_id'] = $userid;
      $_SESSION['user_ip'] = $ip;
      $_SESSION['user_status'] = $userstatus;      
      setcookie("cookie_ip", $ip, time() + 365 * 60 * 60 * 24);
?>


Met alle verwerking enzo, maar dat heb ik even weggelaten.
Mijn beveiliging van de /admin pagina ziet er zo uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php          ///////////////////// ADMIN.PHP////////////////////
function get_ip () { //Niet mijn functie, volgens mij van Jan Koehoorn
    if (@getenv ($_SERVER['HTTP_X_FORWARDED_FOR'])) {
        $ip = @getenv ($_SERVER['HTTP_X_FORWARDED_FOR']);
    }

    elseif (@getenv ($_SERVER['HTTP_CLIENT_IP'])) {
        $ip = @getenv ($_SERVER['HTTP_CLIENT_IP']);
    }

    else {
        $ip = $_SERVER['REMOTE_ADDR'];
    }

    return $ip;
    }

if(isset($_SESSION['user_id'])) {
    
    $ip = get_ip ($ip);
    
    if(($_SESSION['user_ip'] == $ip) && ($_SESSION['user_ip'] == $_COOKIE['cookie_ip'])) {
  
        if($_SESSION['user_status'] == 1) {
        
                                 }
else{
          echo 'Geen rechten ol kokstione';
          exit();
        }
      }
else{

  header("Location: /login");
 }      
      }
else{
          header("Location: /login");
         }

    
     //}else{
 ?>

Als ik dan, zonder ingelogd te zijn, naar /admin ga, word ik keurig doorgestuurd naar /login. Als ik dan, ingelogd als gewone user, naar /admin ga, krijg ik geen 'Geen rechten' bericht te zien maar word ik doorgestuurd naar /login (omdat ik al ingelogd ben word ik van daar ook weer doorgestuurd naar de hoofdpagina (de '/'). Dat laatste heb ik óók wanneer ik wél als admin ingelogd ben.
Daarom vroeg ik me af of dat kwam doordat ik meerdere session gebruikte.

Heeft iemand een idee waarom mijn script fout is?
Bvd!!
Gewijzigd op 01/01/1970 01:00:00 door Rick
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.