I want to use sessions to track unique page views. Not a very robust method, I know, but sufficient for what I want to do.
On the first page load the session variabl
tblCount EACH time, because your session is closed each time your script finishes.
SO: Put the session_start()call as the FIRST LINE in code.$_SESSION variable. So if you set $_SESSION[$pagenumber] = 'something', then you gain the following notice:( ! ) Notice: Unknown: Skipping numeric key 1 in Unknown on line 0
Quite... not understandable. For details see this answer.
Add your $pagenumber as index in an array (here pagenumbers) and that array inside the $_SESSION variable. No notice anymore.
session_start();
$pagenumber = 1;
if (!isset($_SESSION['pagenumbers'])) {
$_SESSION['pagenumbers'] = array();
}
if (!isset($_SESSION['pagenumbers'][$pagenumber])) {
updateViews($pagenumber);
$_SESSION['pagenumbers'][$pagenumber] = $pagenumber;
}
echo 'Page number: ' . $_SESSION['pagenumbers'][$pagenumber] . '
';
$views = getViews($pagenumber);
echo 'Viewed ' . print_r($views, true) . ' times
';
Note: I used my functions to test. They just replace your db-processing code.