Sessie in database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

Jelmer -

Jelmer -

28/05/2010 12:04:46
Quote Anchor link
Ik neem aan dat de code in je openingspost de inhoud van session.php is? Zo ja, dan zal je nog ergens "new SessionManager()" aanroepen (ergens voor session_start()) want immers alleen dan wordt session_set_save_handler aangeroepen.
 
PHP hulp

PHP hulp

24/12/2024 20:16:01
 
Wolf Wolf

Wolf Wolf

28/05/2010 15:43:15
Quote Anchor link
Wellicht kunnen de geleerden zich hier even over buigen: (ben nog niet aan testen toe gekomen- inmiddels al wel ;-))

Op regel43 van het eerste blok staat 'vraagteken' dit is natuurlijk ? (dit even gedaan ivm dat het er dan niet uitziet in deze post door afbreken)

handler.inc.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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
<?php
 /******************************************\
|      Sessionhandler & Errorhandler        |
 \******************************************/

// ----------------------------------------------------------------------------------
// ****** Start: Functie Errorhandler *****
// ----------------------------------------------------------------------------------


    function ErrorLogger($errno, $errstr, $errfile, $errline){
        $bestand = "errors.php"; // Bestand waar de errors in komen
        $debug = false; //true: laat errors zien, false errors worden gelogd
        switch($errno){
            case
E_ERROR:               $errtype="Error";                        break;
            case
E_WARNING:             $errtype="Warning";                        break;
            case
E_PARSE:               $errtype="Parse Error";                    break;
            case
E_NOTICE:              $errtype="Notice";                        break;
            case
E_CORE_ERROR:          $errtype="Core Error";                    break;
            case
E_CORE_WARNING:        $errtype="Core Warning";                break;
            case
E_COMPILE_ERROR:       $errtype="Compile Error";                break;
            case
E_COMPILE_WARNING:     $errtype="Compile Warning";                break;
            case
E_USER_ERROR:          $errtype="User Error";                    break;
            case
E_USER_WARNING:        $errtype="User Warning";                break;
            case
E_USER_NOTICE:         $errtype="User Notice";                    break;
            case
E_STRICT:              $errtype="Strict Notice";                break;
            case
E_RECOVERABLE_ERROR:   $errtype="Recoverable Error";            break;
            default:
                    $errtype="Unknown error (".$errno.")";    break;
        }

        $referrer=(isset($_SERVER['HTTP_REFERER']))? $_SERVER['HTTP_REFERER'] : __FILE__ ;
        
        /* De errors worden in het bestand opgeslagen als een array (errors[])
        Als je een bestand wil maken dat al je errors toont, dan moet je je log includen
        en simpelweg deze array (eerst nog declareren voor je include) aflopen in een lus */

        
        $inhoud = "<?php \n\t".'$i++; $errors[$i]["tijd"]="' . date('d/m/Y - H:i:s') . "\";\n\t";
        $inhoud.= '$errors[$i]["type"]="' . $errtype . "\";\n\t";
        $inhoud.= '$errors[$i]["bestand"]="' . $errfile . "\";\n\t";
        $inhoud.= '$errors[$i]["regel"]="' . $errline . "\";\n\t";
        $inhoud.= '$errors[$i]["msg"]="' . $errstr . "\";\n\t";
        $inhoud.= '$errors[$i]["ip"]="' . $_SERVER['REMOTE_ADDR'] . "\";\n\t";
        $inhoud.= '$errors[$i]["request_uri"]="' . $_SERVER['REQUEST_URI'] . "\";\n\t";
        $inhoud.= '$errors[$i]["referer"]="' . $referrer . "\";\n";
        $inhoud.= "vraagteken>\n";
        //Error loggen:
        if($debug){
            echo($errtype.": ".$errstr." op regel ".$errline." in ".$errfile."<br />\n");
            return true;
        }

        if (file_put_contents($bestand, $inhoud, FILE_APPEND) === FALSE) {
                exit("<h1>ErrorLogger kon error niet loggen !!!</h1>");
        }
        @
header("Location: errors.php") or die("Er is een fout opgetreden bij het laden van de pagina.");
        return true;
    }

    
// ----------------------------------------------------------------------------------
// ****** Einde: Functie Errorhandler *****
// ----------------------------------------------------------------------------------

//Errorlogger instellen als errorhandler + timezone instellen naar onze tijd

set_error_handler("ErrorLogger");    
date_default_timezone_set("Europe/Brussels");

// ----------------------------------------------------------------------------------
// ****** Start: Custom Sessionhandler *****
// ----------------------------------------------------------------------------------


    $mysqli = new mysqli("localhost", "gebruikersnaam", "wachtwoord", "databasenaam");

    // sessie.class wordt aangeroepen
    require_once("sessie.class.php");

    // Maak een nieuw sessie-object
    $ses_obj = new Sessie($mysqli);

    // Hier veranderen we de manier waarop sessies door php worden behandeld naar onze (mysql) manier
    session_set_save_handler (array($ses_obj, 'open'),
                            array($ses_obj, 'sluit'),
                            array($ses_obj, 'lees'),
                            array($ses_obj, 'schrijf'),
                            array($ses_obj, 'vernietig'),
                            array($ses_obj, 'vuilnisman'));

// ----------------------------------------------------------------------------------
// ****** Einde: Custom Sessionhandler *****                          
// ----------------------------------------------------------------------------------

// Het eigenlijk starten van de sessies. Dit moet altijd ONDER session_set_save_handler komen

session_start();
?>


sessie.class.php

<?php
class Sessie{
    private $mysqli;
    private $tabel;
    private $controle;
    private $max_leven = 30; // Tijd in minuten dat een sessie houdbaar is
    
    /*Constructor, geef mysqli connectie mee in OOP vorm, mogelijkheid tot tabel naam te veranderen*/

    public function __construct(mysqli &$mysqli, $tabel="sessies"){
        $this->tabel = $tabel;
        $this->mysqli = &$mysqli;
        $this->controle = sha1($_SERVER['REMOTE_ADDR'].$_SERVER['HTTP_USER_AGENT']);
    }

    
    /* Sessie wordt hier normaal geopend, in ons geval moet er niets gebeuren */
    public function open($pad, $naam){
        return true;
    }

    
    /* Sessie wordt gesloten, even de vuilnisman laten langskomen om te oude sessies op te halen */
    public function sluit(){
        $this->vuilnisman(0);
        return true;
    }

    
    /* inlezen van de sessie */
    public function lees($sessie_id){
        $sessie_leven = time() - ($this->max_leven * 60);
        $sql = "SELECT ses_data FROM " . $this->tabel. " WHERE ses_id = '" . $sessie_id . "' AND ses_controle = '" . $this->controle . "'";
        $sql.= " AND ses_tijd > " . $sessie_leven;
        if($resultaat = $this->mysqli->query($sql)){
            $waarde='';
            if($resultaat->num_rows==1){
                $waardes = $resultaat->fetch_row();
                $waarde = $waardes[0];
            }

            $resultaat->close();
            return $waarde;
        }
else{
            return '';
        }
    }

    
    /* Sessie waarde wordt veranderd */
    public function schrijf($sessie_id, $sessie_data){

        $sessie_data=$this->mysqli->real_escape_string($sessie_data);
        $sql = "UPDATE " . $this->tabel . " SET ses_tijd='" . time() . "', ses_data='" . $sessie_data . "' ";
        $sql.= "WHERE ses_id='" . $sessie_id . "' AND ses_controle = '" . $this->controle . "'";

        if($this->mysqli->query($sql)){ // Update query uitvoeren
            if ($this->mysqli->affected_rows){    // kijken of eer een rij is veranderd, zo niet de rij aanmaken (sql hieronder)
                return true;
            }

            $sql = "INSERT INTO " . $this->tabel . " (ses_id, ses_tijd, ses_start, ses_data, ses_controle) ";
            $sql.= "VALUES ('" . $sessie_id ."', '" . time() . "', '" . time() . "', '" . $sessie_data . "', '" . $this->controle . "')";

            if($this->mysqli->query($sql)){
                return true;    // Rij succesvol aangemaakt
            }else{
                return false;    //Rij niet aangemaakt
            }
        }
else{
            return false;    //Fout bij eerste query
        }
    }

    
    /* Functie die aangeroepen wordt bij session_destroy() */
    public function vernietig($sessie_id){
        $sql = "DELETE FROM " . $this->tabel . " WHERE ses_id = '" . $sessie_id . "'"; // Extra controle uitgelaten, niet echt nodig want je logt uit
        if ($resultaat = $this->mysqli->query ($sql)) {
            return true;
        }
else{
            return false;
        }
    }

    
    /* De vuilnisman zorgt er voor dat sessies die al te lang bestaan verwijdert worden */
    function vuilnisman($leeftijd){
        $sessie_leven = time() - ($this->max_leven * 60);

        $sql = "DELETE FROM " . $this->tabel . " WHERE ses_tijd < " . $sessie_leven;
        
        if ($this->mysqli->query($sql)){
            return true;
        }
else{
            return false;
        }
    }
    
}

?>
Gewijzigd op 28/05/2010 19:35:55 door Wolf Wolf
 
Mitchel V

Mitchel V

28/05/2010 21:20:57
Quote Anchor link
Oh raar genoeg doet de sessie het nu wel met de laatste gebruikte:

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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
<?php
function open_session()
{

    //Global variable to be used within all the functions.
    global $db;
    
    //Connect to the database.
    if($db = mysql_connect('localhost', 'username','password'))
    {

        //if succeeded select the database.
        mysql_select_db('database');
        return true;
    }

    else
    {
        return false;
    }
}

function
close_session()
{

    //Global variable to be used within all the functions.
    global $db;
    
    //Close the connection to the database server by setting the $db variable to NULL.
    $db = NULL;
    return true;
}

function
read_session($session_id)
{

    //Global variable to be used within all the functions.
    global $db;
    
    //Selecting the data from the database where the current session_id equals the one in the database.
    $query = "SELECT
                session_data
          FROM
                  session
          WHERE
                  session_id='"
.$session_id."' ";
    
    //check if the query succeedes.
    if($result = mysql_query($query))
    {

        //If a row meets the requirement list the data and return it.
        if(mysql_num_rows($result) == 1)
        {

            list($data) = mysql_fetch_array($result, MYSQL_NUM);
            return $data;
        }

        else
        {
            //If there is no result, send back an empty string.
            return '';
        }
    }

    else
    {
        //If the query fails, send back an empty string.
        return '';
    }    
}

function
write_session($session_id, $session_data)
{

    //Global variable to be used within all the functions.
    global $db;
        
    //Replace the session_data with the new data.
    
    //* Replace is a SQL function that works as an INSERT/UPDATE.
    //If there is no row, create a new one, else update the current.

    $query = " REPLACE INTO
                            session
                            (
                            session_id,
                            session_data,
                            session_garbage
                            )
                            VALUES
                            (
                            '"
.$session_id."' ,
                            '"
.$session_data."',  
                            CURRENT_TIMESTAMP)"
;

    
        if(mysql_query($query))
        {

            //if the query succeedes return the affected rows (should allways be 1).
            return mysql_affected_rows();  
        }

        else
        {
            return false;
        }
                        
}

function
destroy_session($session_id)
{

    //Global variable to be used within all the functions.
    global $db;
    
    //Delete our session, this function will be called when we use session_destroy().
    $query = "DELETE FROM
                        session
              WHERE
                      session_id='"
.$session_id."'";
    
    //If the query succeedes empty the $_SESSION array and return the affected rows.
    if(mysql_query($query))
    {

        $_SESSION = array();
        return mysql_affected_rows();
    }

    else
    {
        return false;
    }
    
}

function
clean_session($seconds)
{

    //Global variable to be used within all the functions.
    global $db;
    
    //Delete items older than the amount of seconds wich is defined in the php.ini file.  
    //Default is after the browser is closed(0 seconds).

    $query = "DELETE FROM  
                    session
              WHERE
                     DATE_ADD(session_garbage, INTERVAL "
.$seconds." SECOND) < NOW()";
    
    //Return the affected rows when the query succeedes.
    if(mysql_query($query))
    {

        return mysql_affected_rows();
    }

    else
    {
        return false;
    }
    
}



//Set our brand new sessionhandler to be used by PHP.
session_set_save_handler('open_session','close_session', 'read_session', 'write_session', 'destroy_session', 'clean_session');

//Start the session as you would normally do.
session_start();
?>


Maar nu het volgende.
Iemand heeft een sessie aangemaakt.
en ik wil dat die sessie alleen bij die persoon word gelezen, en die persoon mag maar 1 sessie hebben.
En als de sessie verlopen is dan moet de sessie ongeldig zijn...

hoe doe ik dat?
Gewijzigd op 28/05/2010 21:21:19 door Mitchel V
 
Wolf Wolf

Wolf Wolf

28/05/2010 22:05:27
Quote Anchor link
Hoi Mitch,

Ik denk dat het ook beter is om bij Inserts en Updates "mysql_real_escape_string" te gebruiken.

In mijn gebruikte script zorgt de "vuilnisman" voor het verwijderen van de sessie, dus:

- Na sluiten browser -> sessie verlopen
- Opnieuw browser starten -> nieuwe sessie = opnieuw inloggen
- Na "netjes" uitloggen (afh van je logout-script) -> sessie verlopen
- Autocontrole op verlopen sessies wanneer de class Sessie wordt aangeroepen

Ik heb een rar-bestand met de scripts voor sessionhandler, errorhandler, loginscript etc... misschien heb je daar wat aan. Bron komt van e2p-site.
 
Mitchel V

Mitchel V

28/05/2010 22:24:24
Quote Anchor link
Ok hoe kom ik aan je rar bestand ?:)
 
Wolf Wolf

Wolf Wolf

28/05/2010 22:40:59
Quote Anchor link
Ik heb even op de ep2-site gezocht voor je. Daar staat ook een duidelijk verhaal omtrent hetgeen ik je zojuist hierboven vertelde.Een veilig loginscript maken

Ik hoop dat ook jij er wat aan hebt. Je zult dan vast wel e.e.a. gaan omgooien richting OOP en dus met mysqli gaan werken. Om de bestanden te downloaden moet je daar wel eerst registreren. Ik ben hier nog niet zo lang op het forum en ken hier nog niet alle mogelijkheden, maar eventueel kun je me een PM sturen waar je het wilt ontvangen.
 
Mitchel V

Mitchel V

29/05/2010 02:07:46
Quote Anchor link
Ik gebruik nu het script wat jij had gezegt maar er gaat iets fout:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
    $i
++; $errors[$i]["tijd"]="29/05/2010 - 02:04:29";
    $errors[$i]["type"]="Notice";
    $errors[$i]["bestand"]="/login.php";
    $errors[$i]["regel"]="117";
    $errors[$i]["msg"]="Undefined index:  username";
    $errors[$i]["ip"]="83.**.**.***";
    $errors[$i]["request_uri"]="/index.php?pagina=login";
    $errors[$i]["referer"]="/index.php?pagina=home";
?>

login.php: regel 117:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<td>Gebruikersnaam:</td><td><input type="text" name="username" value="<?= $_POST['username']?>"></td>


maar wat is er nou fout :S
 
Wolf Wolf

Wolf Wolf

29/05/2010 04:36:41
Quote Anchor link
Heb je de value letterlijk zo staan ?
Dit lijkt me beter:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_POST['username']; ?>
 
Mitchel V

Mitchel V

29/05/2010 12:46:17
Quote Anchor link
nog steeds:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$errors[$i]["regel"]="117";
    $errors[$i]["msg"]="Undefined index:  username";


regel 117:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<td>Gebruikersnaam:</td><td><input type="text" name="username" value="<?php echo $_POST['username']; ?>"></td>


wat is er dan fout?
Gewijzigd op 29/05/2010 12:46:50 door Mitchel V
 
Jelmer -

Jelmer -

29/05/2010 12:53:10
Quote Anchor link
Even tussendoor, Wolf Wolf,

Pas je wel op dat die foutafhandeling mij toelaat om PHP code uit te voeren? Ik zou zelf gemakkelijk de HTTP_REFERER header kunnen aanpassen, ervoor zorgen dat er een quote in staat. Vervolgens kan ik m'n eigen PHP code erachter zetten die dan wordt opgeslagen in je errors.php, en als ik dat bestand dan direct (of indirect, omdat je ergens include $_GET... hebt gebruikt) aanroep, wordt mijn code uitgevoerd.

edit: die error is een notice, undefined index. Je kan wel googlen wat dat precies betekent (het is zo'n beetje de meest voorkomende notice) maar het komt erop neer dat de $_POST array niet een item bevat met de index/key/naam 'username'. Met isset($_POST['username']) eerst controleren of dat item wel bestaat alvorens je hem probeert uit te lezen lost het probleem op. Of je gebruikt deze heerlijke korte functie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
function ifsetor(&$var, $alternative = null) {
    return isset($var)
        ?
$var
        : $alternative;
}


echo '<input type="text" value="' . ifsetor($_POST['username']) . '>';
?>
Gewijzigd op 29/05/2010 12:59:33 door Jelmer -
 
Mitchel V

Mitchel V

29/05/2010 15:19:45
Quote Anchor link
ik wil helemaal niet dat dat script zich daar mee bemoeit..
hoe kan ik dat uit zetten?
 
Mitchel V

Mitchel V

29/05/2010 15:26:14
Quote Anchor link
ik wil helemaal niet dat dat script zich daar mee bemoeit..
hoe kan ik dat uit zetten?


sorry internet viel uit en toen ging hij weer aan..
Gewijzigd op 29/05/2010 15:26:45 door Mitchel V
 
Wolf Wolf

Wolf Wolf

29/05/2010 16:51:02
Quote Anchor link
Jelmer:
Even tussendoor, Wolf Wolf,

Pas je wel op dat die foutafhandeling mij toelaat om PHP code uit te voeren? Ik zou zelf gemakkelijk de HTTP_REFERER header kunnen aanpassen, ervoor zorgen dat er een quote in staat. Vervolgens kan ik m'n eigen PHP code erachter zetten die dan wordt opgeslagen in je errors.php, en als ik dat bestand dan direct (of indirect, omdat je ergens include $_GET... hebt gebruikt) aanroep, wordt mijn code uitgevoerd.

edit: die error is een notice, undefined index. Je kan wel googlen wat dat precies betekent (het is zo'n beetje de meest voorkomende notice) maar het komt erop neer dat de $_POST array niet een item bevat met de index/key/naam 'username'. Met isset($_POST['username']) eerst controleren of dat item wel bestaat alvorens je hem probeert uit te lezen lost het probleem op. Of je gebruikt deze heerlijke korte functie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
function ifsetor(&$var, $alternative = null) {
    return isset($var)
        ?
$var
        : $alternative;
}


echo '<input type="text" value="' . ifsetor($_POST['username']) . '>';
?>


Hoi Jelmer,

Was voor Mitch meer dat zijn code niet juist stond. Ik gebruik zelf in een dergelijke form (met voorgedefinieerde waarde):

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_SESSION['POSTC']; ?>


Fouten worden bij mij niet weergegeven ivm $debug=false en mijn errors.php begint met:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php exit(); ?>


Daarnaast kun je het errors bestand op een plek plaatsen met de rechten zoals je die zelf wilt hebben.

Is dat niet goed dan?
Gewijzigd op 29/05/2010 16:58:40 door Wolf Wolf
 
Mitchel V

Mitchel V

29/05/2010 17:21:07
Quote Anchor link
ik wil niet dat de error bestand over mijn $_POST warders gaat.
ik wil dat hij alleen met mijn sessies mag bemoeien..
 
Wolf Wolf

Wolf Wolf

29/05/2010 17:35:32
Quote Anchor link
Op welke wijze je de errorafhandelingen wilt is een eigen keuze.

Maar ben je al wat wijzer geworden met je melding. Je wilt namelijk een echo geven van iets dat niet bestaat cq waaraan niets is toegekend.

Zie ook Jelmer zijn reactie.
Gewijzigd op 29/05/2010 17:37:31 door Wolf Wolf
 
Mitchel V

Mitchel V

29/05/2010 18:29:15
Quote Anchor link
Ik snap de foutmelding.
maar hoe kan ik verzorgen dat hij niet meer dat controleert?
 
Wolf Wolf

Wolf Wolf

29/05/2010 19:15:32
Quote Anchor link
Dan kun je bijv. gebruiken wat Jelmer schrijft:

variabele controleren met isset
of
functie zoals beschreven

Lees het stukje van Jelmer nog eens goed door ;-)

Een andere mogelijkheid is bijv een init bestand includen (met vooraf gedeclareerde standaard waarden) waarin je bijv het volgende hebt staan:

$_SESSION['frmField01'] = "";

Wanneer je een post ontvangt (praat ik even niet over escape-string etc...) en deze post-waarde ($_POST['username']) toekent aan bv. $_SESSION['frmField01'] en wilt de postwaarde nog ergens laten zien o.i.d. dan gebruik je echo $_SESSION['frmField01'] in je "value"-gedeelte

Je krijgt geen foutmelding in het formulier waar nog niets is ingevuld aangezien hier dan immers echo $_SESSION['frmField01'] staat en deze variabele reeds is gedeclareerd.

Ik wil alleen maar aangeven dat er dus verschillende mogelijkheden zijn. Aan jou de keuze.
Gewijzigd op 29/05/2010 19:27:45 door Wolf Wolf
 
Mitchel V

Mitchel V

30/05/2010 01:17:08
Quote Anchor link
Mijn keuze is gemaakt.
Ik wil dat deze functie uit gaat..
maar hoe?
 
Jurgen Meijer

Jurgen Meijer

31/05/2010 12:01:18
Quote Anchor link
Wat ik ook altijd doe is bijv:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
class SessionException extends Exception{}

class Session{

...
}

?>


In je class doe je dan bijv:

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
<?php

$result
= $this->db->query('INSERT INTO..');

if($this->db->affectedRows() == 0){
throw new SessionException('Kan sessie niet schrijven');
}



//en dan op je pagina

try{
$_SESSION['test'] = 1;
}
catch(SessionException $e){

//Doe iets met je error.

}
?>
 
Wolf Wolf

Wolf Wolf

31/05/2010 12:54:23
Quote Anchor link
Mitchel V op 30/05/2010 01:17:08:
Mijn keuze is gemaakt.
Ik wil dat deze functie uit gaat..
maar hoe?


Waarom wil je een errorhandler uitzetten (zeker bij testen handig, lijkt me).
Wil je dan dat er errors in je scripting blijven? In dit geval is het een fout die je zelf schrijft en de errorhandler doet gewoon zijn werk.

Als je het toch persé wilt kun je de set_error_handler("ErrorLogger"); uitzetten in de handler.inc (of hele functie weggooien). De gebruikelijke errorhandler is dan weer van kracht.
Gewijzigd op 31/05/2010 12:56:09 door Wolf Wolf
 

Pagina: « vorige 1 2



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.