Poster of Linux kernelThe best gift for a Linux geek
Session Handling

Session Handling

Section: C Library Functions (3) Updated: 13 Mar 2003
Local index Up
 

NAME

Session Handling -  

Detailed Description

One of the most diferencials of LibCGI is its support to sessions, a mechanism that permits the application to keep variables trough the user's session, when he is visiting your website.  

Functions


int cgi_session_destroy ()
Destroys the session.
char * cgi_session_var (const char *var_name)
Gets session variable's value.
void cgi_session_cookie_name (const char *cookie_name)
Defines the name of the cookie that LibCGI will use to store session's ID.
void cgi_session_save_path (const char *path)
Defines where session control files will be saved.
int cgi_session_register_var (const char *name, const char *value)
Register a variable in the current opened session.
int cgi_session_alter_var (const char *name, const char *new_value)
Alter session variable value.
int cgi_session_var_exists (const char *name)
Searches for determined session variable.
int cgi_session_unregister_var (char *name)
Unregister some session variable.
int cgi_session_start ()
Starts a new session.  

Function Documentation

 

int cgi_session_alter_var (const char * name, const char * new_value)

Alter session variable value.Change session variable 'name' value to data pointer by 'new_value'

Parameters:

name Session variable name to change
new_value New session variable value

See also:

cgi_session_register_var(), cgi_session_unregister_var()

 

void cgi_session_cookie_name (const char * cookie_name)

Defines the name of the cookie that LibCGI will use to store session's ID.This function works like cgi_session_save_path(). This functionality let you to use different names for each site, but remember, you cannot use multiple session for the same application yet.

Parameters:

cookie_name Name of the cookie to create

See also:

cgi_session_save_path()

Note:

This function must be called before cgi_session_start()

 

int cgi_session_destroy ()

Destroys the session.Destroys the current opened session, including all data. After session_destroy() was called, is not more possible to use session functions before an another call to session_start()

Returns:

1 if no errors, 0 if.

See also:

cgi_session_start

cgi_session_error_message

 

int cgi_session_register_var (const char * name, const char * value)

Register a variable in the current opened session.Note that we are opening and closing the session file every time this function is called... ( I/O ^ 1000000 :-/ )

Parameters:

name Variable name
value Variable value

See also:

cgi_session_alter_var(), cgi_session_unregister_var()

 

void cgi_session_save_path (const char * path)

Defines where session control files will be saved.If in the your CGI you don't make a call to cgi_session_save_path(), LibCGI will use the default value, which is '/tmp/'. To see how to modify the value, see the following example.
Just note you need to add '/' at the end of the directory name


 // your_cgi.c
 // Set 'session_files' directory under your CGI directory as the path 
 // which LibCGI will use to store session files.
 
 cgi_session_save_path('session_files/');
  



Note that using this form, LibCGI will search for 'session_files' directory using relative path to your cgi application. For example, if your CGI script is located at /usr/local/httpd/web/your_name/cgi-bin/ directory, and you use the above declaration, the files for the session will be stored at /usr/local/httpd/web/your_name/cgi-bin/session_files directory. Resuming, the path is relative to where your application resides. 


And remember, LibCGI does not create the directory for you. Parameters:
path Path, relative or absolute
See also:
cgi_session_cookie_name
Note:
This function must be called before cgi_session_start()
 

int cgi_session_start ()

Starts a new session.This function is responsible for starting and creating a new session. It must be called before any other session function, and every time before any HTML header has sent.

See also:

session_destroy()

 

int cgi_session_unregister_var (char * name)

Unregister some session variable.Parameters:

name Session variable name to unregister

See also:

cgi_session_var_exists(), cgi_session_register_var()

 

char* cgi_session_var (const char * var_name)

Gets session variable's value.Parameters:

name Session variable name to get the value

Returns:

Variable contents if found, NULL if not.

See also:

cgi_session_var_exists()

 

int cgi_session_var_exists (const char * name)

Searches for determined session variable.Parameters:

name Session variable name to search

Returns:

1 if variable is registered, 0 if not

See also:

cgi_session_var()


 

Index

NAME
Detailed Description
Functions
Function Documentation
int cgi_session_alter_var (const char * name, const char * new_value)
void cgi_session_cookie_name (const char * cookie_name)
int cgi_session_destroy ()
int cgi_session_register_var (const char * name, const char * value)
void cgi_session_save_path (const char * path)
int cgi_session_start ()
int cgi_session_unregister_var (char * name)
char* cgi_session_var (const char * var_name)
int cgi_session_var_exists (const char * name)

This document was created by man2html, using the manual pages.
Time: 21:43:20 GMT, April 16, 2011