예제 #1
0
function limpiar()
{
    if (rand() % 100 == 0) {
        adodb_sess_gc(100);
    }
    return;
}
예제 #2
0
} else {
    $_SESSION['MONKEY'][0] += 1;
}
if (!isset($_GET['nochange'])) {
    @($_SESSION['AVAR'] += 1);
}
### START DISPLAY
print "<h3>PHP " . PHP_VERSION . "</h3>";
print "<p><b>\$_SESSION['AVAR']={$_SESSION['AVAR']}</b></p>";
print "<hr /> <b>Cookies</b>: ";
print_r($_COOKIE);
var_dump($_SESSION['MONKEY']);
### RANDOMLY PERFORM Garbage Collection
### In real-production environment, this is done for you
### by php's session extension, which calls adodb_sess_gc()
### automatically for you. See php.ini's
### session.cookie_lifetime and session.gc_probability
if (rand() % 5 == 0) {
    print "<hr /><p><b>Garbage Collection</b></p>";
    adodb_sess_gc(10);
    if (rand() % 2 == 0) {
        print "<p>Random own session destroy</p>";
        session_destroy();
    }
} else {
    $DB = ADODB_Session::_conn();
    $sessk = $DB->qstr('%AZ' . rand() . time());
    $olddate = $DB->DBTimeStamp(time() - 30 * 24 * 3600);
    $rr = $DB->qstr(rand());
    $DB->Execute("insert into {$options['table']} (sesskey,expiry,expireref,sessdata,created,modified) values ({$sessk},{$olddate}, {$rr},'',{$olddate},{$olddate})");
}
  </tr>
  <tr>
    <td valign="top">
<?php 
    echo "<h3>\$USERID = " . $USERID . "</h3>";
    echo "<p><b>\$_SESSION['foo'] = " . $_SESSION['foo'] . "</b></p>";
    echo "<p><b>\$_SESSION['baz'] = " . $_SESSION['baz'] . "</b></p>";
    echo "<p><b>\$_SESSION['hiya'] = " . $_SESSION['hiya'] . "</b></p>";
    echo "<hr> <b>Cookies</b>: ";
    print_r($_COOKIE);
    echo "<br><hr> <b>Sessions</b>: ";
    print_r($_SESSION);
    if (mt_rand() % 2 == 0) {
        echo "<hr><p><b>Garbage Collection</b></p>";
        $time = time() + 6400;
        adodb_sess_gc($time);
    } else {
        if (mt_rand() % 2 == 0) {
            echo "<hr><p><b>Session destroy</b></p>";
            session_destroy();
        } else {
            echo "<hr><p><b>Normal Execution</b></p>";
        }
    }
    ?>
<br>
	</td>
  </tr>
	<tr>
  <td>
    <div align="center">Reload/Refresh the page multiple times.  You should randomly see "Garbage Collection", "Session Destroyed" or "Normal Execution".