Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: Having problems with user defined sessions using postgresql



Ok,

1. PHPs postgres lib doesn't have a pg_error() function. You want pg_last_error(). 2. Are you using the sid as li_session's primary key? If so, before you create a new session with an already existing sid, you will need to delete the old sid entry before inserting a new one with the same sid.

Richmond Dyes wrote:
I have written user defined session management library in php using postgresql as my session repository. When I let my session timeout on my browser I get the below errors on my screen.

*Warning*: pg_query(): Query failed: ERROR: duplicate key violates unique constraint "li_session_pkey" in */var/www/html/liberty/includes/session.php* on line *31*

*Fatal error*: Call to undefined function: pg_error() in */var/www/html/liberty/includes/session.php* on line *31*

*Warning*: Unknown(): A session is active. You cannot change the session module's ini settings at this time. in *Unknown* on line *0

The problem is in the write function of my library. Here it is:

function pg_session_write($sid, $val) {
    $life = get_cfg_var("session.gc_maxlifetime");
    $exp = time() + $life;
    $selQ = "SELECT sidid FROM li_session
    WHERE sidid = '$sid' AND exptime >". time();
    $selR= pg_query($selQ)or die("It didn't work:". pg_error());
     if(pg_num_rows($selR)) {
        $sesupQ ="UPDATE li_session SET
        exptime = '$exp', vidval = '$val'
        WHERE
        sidid = '$sid' and exptime >". time();
        $sesupR=pg_query($sesupQ) or die("It didn't work:". pg_error());
    } else {
     $sesinQ = "INSERT INTO li_session
    VALUES('$sid', '$val', '$exp')";
$sesinR= pg_query($sesinQ) or die("It didn't work:". pg_error()); }
}
*


--
erik jones <erik(at)myemma(dot)com>
software development
emma(r)




Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group