True en false

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Olivier -

olivier -

01/01/2012 13:36:28
Quote Anchor link
Dag mensen :) ,

ik heb dit script.
Quote:
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
<?php
        class session {
            function
session()    
            {

            if(isset($_SESSION['id']))
                    {

                    $user = mysql_query("SELECT * FROM leden WHERE id='".$_SESSION['id']."'");
                    if(mysql_num_rows($user) >'0')
                        {

                            $_session['logged_id'] = true;
                        }
else {
                            $_session['logged_in'] = false;
                        }
                    }    
                }    
            }
    
?>

en zo haal ik het eruit.
Quote:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
include 'global.php';
    if($session->session() == 'false')
        {

            echo 'niet ingelogd';
        }
else {
            echo 'ingelogd';
            echo $_SESSION['logged_id'];
        }

?>

maar als ik een sessie aan maak krijg ik het volgende.
Notice: Undefined index: logged_id in C:\xampp\htdocs\ledensysteem\index.php on line 9

wie kan me helpen?
 
PHP hulp

PHP hulp

19/04/2024 21:56:34
 
Noppes Homeland

Noppes Homeland

01/01/2012 13:57:05
Quote Anchor link
Het heeft geen zin om true / false toe te kennen aan $_SESSION

true / false zijn van het type boolean
$_SESSION waarden zijn van het type string

En leer je code debuggen, want dan had je geweten wat de $_SESSION array voor waarde heeft voor de key's

http://www.php.net/var_dump
http://www.php.net/print_r

En dan ook maar de opmerkingen:
- vergelijk geen appels met peren: mysql_num_rows($user) >'0'
- verdiep je in http://www.php.net/manual/en/book.session.php


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
<?php
session_start(); // zonder deze regel doe ie het niet !!
$_SESSION['logged_in'] = 1;

class session {

     function
getLoggedIn() {
      
            return isset($_SESSION['logged_in']) && (int)$_SESSION['logged_in'] === 1  ? true : false;
     }
}


$session = new session();

if ($session->getLoggedIn()) {
   echo 'Yep';
}

else {
   echo 'Nop';
}


$_SESSION['logged_in'] = 0;

if ($session->getLoggedIn()) {
   echo 'Yep';
}

else {
   echo 'Nop';
}

?>


en nog wat leesvoer:
http://www.php.net/oop5
Gewijzigd op 01/01/2012 14:01:33 door Noppes Homeland
 
Kris Peeters

Kris Peeters

02/01/2012 13:17:58
Quote Anchor link
Het is $_SESSION. Niet $_session.

Dat moet met hoofdletters.
 
- SanThe -

- SanThe -

02/01/2012 13:21:57
Quote Anchor link
Lekker verwarrend: SESSION en session door elkaar.

Edit:

Noppes Homeland op 01/01/2012 13:57:05:
Het heeft geen zin om true / false toe te kennen aan $_SESSION
true / false zijn van het type boolean
$_SESSION waarden zijn van het type string


Complete onzin.
True en false kunnen net zo goed in een session gebruikt worden.
Gewijzigd op 02/01/2012 13:27:16 door - SanThe -
 



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.