diff --git a/functions/session.xml b/functions/session.xml
index 1ba52f636d..ec081e52b7 100644
--- a/functions/session.xml
+++ b/functions/session.xml
@@ -35,15 +35,49 @@
by the session module unless the user defines them later.
- track_vars and gpc_globals
- configuration settings influence how the session variables get
- restored. If track_vars is enabled, then the
- restored session variables will be available in the global
- associative array $HTTP_STATE_VARS. If
- gpc_globals is enabled, then the session
- variables will be restored to corresponding global variables. If
- both of these settings are enabled, then the globals variables and
- the $HTTP_STATE_VARS entries will reference the same value.
+ track_vars and register_globals
+ configuration settings influence how the session variables get stored
+ and restored.
+
+
+ If track_vars is enabled and
+ register_globals is disabled, only members of the
+ global associative array $HTTP_SESSION_VARS can be registered as
+ session variables. The restored session variables will only be
+ available in the array $HTTP_SESSION_VARS.
+
+
+ Registering a variable with track_vars enabled
+
+
+<?php
+session_register("count");
+$HTTP_SESSION_VARS["count"]++;
+?>
+
+
+
+
+ If register_globals is enabled, then all global
+ variables can be registered as session variables and the session
+ variables will be restored to corresponding global variables.
+
+
+ Registering a variable with register_globals enabled
+
+
+<?php
+session_register("count");
+$count++;
+?>
+
+
+
+
+ If both track_vars and
+ register_globals are enabled, then the globals
+ variables and the $HTTP_SESSION_VARS entries will reference the same
+ value.
There are two methods to propagate a session id: