Re: [PHP] Sessions and Query String Variable Handling

2002-04-28 Thread Dennis Moore

Thanks for your assistance...   I found three small errors that caused me
the problem.

1.  I had an extra line or space in my include file that defines all my
functions after the '?'
2.  I didn't realize that session_start returns an output.  I assigned a
variable to it.
3.  I needed to passed the REQUEST_URI string in a hidden variable within my
login form.

Voila!!!  Everything worked fine.

I just wasn't seeing it yesterday.   I was just too close to the code...


- Original Message -
From: John Holmes [EMAIL PROTECTED]
To: 'Dennis Moore' [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Saturday, April 27, 2002 11:33 PM
Subject: RE: [PHP] Sessions and Query String Variable Handling


 Not for server side. You can use a META REFRESH on the client side, but
 I personally find that ugly.

 This is why I always write my functions so that they don't output
 anything. They just assign the output to a variable and return it. That
 way, I can call the function anywhere, save the result, and just echo
 that variable where ever I need to.

 ---John Holmes...

  -Original Message-
  From: Dennis Moore [mailto:[EMAIL PROTECTED]]
  Sent: Saturday, April 27, 2002 5:24 PM
  To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
  Subject: Re: [PHP] Sessions and Query String Variable Handling
 
  Thanks,
 
  Is there any way of doing this without using the header() to redirect?
 I
  have some functions that get executed before the sessions stuff.   I
 am
  trying to avoid using output buffering or re-writing my code.
 
  /dkm
 
 
 
 
  - Original Message -
  From: John Holmes [EMAIL PROTECTED]
  To: 'Dennis Moore' [EMAIL PROTECTED];
 [EMAIL PROTECTED]
  Sent: Saturday, April 27, 2002 8:49 PM
  Subject: RE: [PHP] Sessions and Query String Variable Handling
 
 
   $page = $_SERVER[SERVER_NAME] . $_SERVER[SCRIPT_NAME] .
   $_SERVER[QUERY_STRING];
  
   That will recreate the URL that the user clicked on. Save that to a
   variable before you check for a session. Once you start a session or
   verify that one exists, use header() to send them back to that page.
  
   ---John Holmes.
  
   -Original Message-
   From: Dennis Moore [mailto:[EMAIL PROTECTED]]
   Sent: Saturday, April 27, 2002 2:37 PM
   To: [EMAIL PROTECTED]
   Subject: [PHP] Sessions and Query String Variable Handling
  
   Env:  Apache 1.3.x/php4.0.6/mysql3.23.x
  
   Scenario:  I have built a system that uses PHP sessions for user
 access.
   Within the system I send user notifications via email.   Within the
   email are links to certain pages with variables.  For example.
  
   http://mysite.com/view_page.htm?id=6
  
   My system checks to see if the session is valid.  Since the user is
   coming from an email.  There is no session.  So the user is prompted
 for
   the user and password.  They enter and click submit.  The
 authentication
   passes the user to right page, but losses the variables in the query
   string.  Thus causing errors.
  
   Here is the authentication code...
    set session settings from login form
   if (!session_is_registered(valid_user)  $session_login==proc)
 {
if ($userid  $password) {
   // if the user has just tried to log in
  
   $db_conn = mysql_connect(localhost);
   mysql_select_db($dbname, $db_conn);
   $query = select * from auth_users 
  .where auth_username='$userid' 
  . and auth_password='$password' ;
   $result = mysql_query($query, $db_conn);
   if (mysql_num_rows($result) 0 ) {
 // if they are in the database register the user id
 $valid_user = $userid;
 $valid_group=mysql_result($result,0,auth_group);
  $valid_perms=mysql_result($result,0,auth_perms);
  $valid_auth_id=mysql_result($result,0,auth_id);
 session_register(valid_user);
  session_register(valid_group);
  session_register(valid_perms);
  session_register(valid_auth_id);
   } else {
  $invalid_login= Invalid login:  Could not log you in...
  !--ERROR: $dbname P $query--;
 }
}
   }
  
   Any Ideas on how to pass the query string variables through the
   authentication process?
  
 
 
  --
  PHP General Mailing List (http://www.php.net/)
  To unsubscribe, visit: http://www.php.net/unsub.php




-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




RE: [PHP] Sessions and Query String Variable Handling

2002-04-27 Thread John Holmes

$page = $_SERVER[SERVER_NAME] . $_SERVER[SCRIPT_NAME] .
$_SERVER[QUERY_STRING];
 
That will recreate the URL that the user clicked on. Save that to a
variable before you check for a session. Once you start a session or
verify that one exists, use header() to send them back to that page. 
 
---John Holmes.
 
-Original Message-
From: Dennis Moore [mailto:[EMAIL PROTECTED]] 
Sent: Saturday, April 27, 2002 2:37 PM
To: [EMAIL PROTECTED]
Subject: [PHP] Sessions and Query String Variable Handling
 
Env:  Apache 1.3.x/php4.0.6/mysql3.23.x
 
Scenario:  I have built a system that uses PHP sessions for user access.
Within the system I send user notifications via email.   Within the
email are links to certain pages with variables.  For example.
 
http://mysite.com/view_page.htm?id=6
 
My system checks to see if the session is valid.  Since the user is
coming from an email.  There is no session.  So the user is prompted for
the user and password.  They enter and click submit.  The authentication
passes the user to right page, but losses the variables in the query
string.  Thus causing errors.
 
Here is the authentication code...
 set session settings from login form
if (!session_is_registered(valid_user)  $session_login==proc) {
 if ($userid  $password) {
// if the user has just tried to log in
 
$db_conn = mysql_connect(localhost);
mysql_select_db($dbname, $db_conn);
$query = select * from auth_users 
   .where auth_username='$userid' 
   . and auth_password='$password' ;
$result = mysql_query($query, $db_conn);
if (mysql_num_rows($result) 0 ) {
  // if they are in the database register the user id
  $valid_user = $userid;
  $valid_group=mysql_result($result,0,auth_group);
   $valid_perms=mysql_result($result,0,auth_perms);
   $valid_auth_id=mysql_result($result,0,auth_id);
  session_register(valid_user);
   session_register(valid_group);
   session_register(valid_perms);
   session_register(valid_auth_id);
} else {
   $invalid_login= Invalid login:  Could not log you in...
   !--ERROR: $dbname P $query--;
  }
 }
}
 
Any Ideas on how to pass the query string variables through the
authentication process?  



RE: [PHP] Sessions and Query String Variable Handling

2002-04-27 Thread John Holmes

You'll have to add an http:// to that string, too.

---John Holmes...

 -Original Message-
 From: John Holmes [mailto:[EMAIL PROTECTED]]
 Sent: Saturday, April 27, 2002 5:50 PM
 To: 'Dennis Moore'; [EMAIL PROTECTED]
 Subject: RE: [PHP] Sessions and Query String Variable Handling
 
 $page = $_SERVER[SERVER_NAME] . $_SERVER[SCRIPT_NAME] .
 $_SERVER[QUERY_STRING];
 
 That will recreate the URL that the user clicked on. Save that to a
 variable before you check for a session. Once you start a session or
 verify that one exists, use header() to send them back to that page.
 
 ---John Holmes.
 
 -Original Message-
 From: Dennis Moore [mailto:[EMAIL PROTECTED]]
 Sent: Saturday, April 27, 2002 2:37 PM
 To: [EMAIL PROTECTED]
 Subject: [PHP] Sessions and Query String Variable Handling
 
 Env:  Apache 1.3.x/php4.0.6/mysql3.23.x
 
 Scenario:  I have built a system that uses PHP sessions for user
access.
 Within the system I send user notifications via email.   Within the
 email are links to certain pages with variables.  For example.
 
 http://mysite.com/view_page.htm?id=6
 
 My system checks to see if the session is valid.  Since the user is
 coming from an email.  There is no session.  So the user is prompted
for
 the user and password.  They enter and click submit.  The
authentication
 passes the user to right page, but losses the variables in the query
 string.  Thus causing errors.
 
 Here is the authentication code...
  set session settings from login form
 if (!session_is_registered(valid_user)  $session_login==proc) {
  if ($userid  $password) {
 // if the user has just tried to log in
 
 $db_conn = mysql_connect(localhost);
 mysql_select_db($dbname, $db_conn);
 $query = select * from auth_users 
.where auth_username='$userid' 
. and auth_password='$password' ;
 $result = mysql_query($query, $db_conn);
 if (mysql_num_rows($result) 0 ) {
   // if they are in the database register the user id
   $valid_user = $userid;
   $valid_group=mysql_result($result,0,auth_group);
$valid_perms=mysql_result($result,0,auth_perms);
$valid_auth_id=mysql_result($result,0,auth_id);
   session_register(valid_user);
session_register(valid_group);
session_register(valid_perms);
session_register(valid_auth_id);
 } else {
$invalid_login= Invalid login:  Could not log you in...
!--ERROR: $dbname P $query--;
   }
  }
 }
 
 Any Ideas on how to pass the query string variables through the
 authentication process?


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP] Sessions and Query String Variable Handling

2002-04-27 Thread eric.coleman

You can also use

$page = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];

- Original Message - 
From: John Holmes [EMAIL PROTECTED]
To: 'Dennis Moore' [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Saturday, April 27, 2002 8:49 PM
Subject: RE: [PHP] Sessions and Query String Variable Handling


 $page = $_SERVER[SERVER_NAME] . $_SERVER[SCRIPT_NAME] .
 $_SERVER[QUERY_STRING];
  
 That will recreate the URL that the user clicked on. Save that to a
 variable before you check for a session. Once you start a session or
 verify that one exists, use header() to send them back to that page. 
  
 ---John Holmes.
  
 -Original Message-
 From: Dennis Moore [mailto:[EMAIL PROTECTED]] 
 Sent: Saturday, April 27, 2002 2:37 PM
 To: [EMAIL PROTECTED]
 Subject: [PHP] Sessions and Query String Variable Handling
  
 Env:  Apache 1.3.x/php4.0.6/mysql3.23.x
  
 Scenario:  I have built a system that uses PHP sessions for user access.
 Within the system I send user notifications via email.   Within the
 email are links to certain pages with variables.  For example.
  
 http://mysite.com/view_page.htm?id=6
  
 My system checks to see if the session is valid.  Since the user is
 coming from an email.  There is no session.  So the user is prompted for
 the user and password.  They enter and click submit.  The authentication
 passes the user to right page, but losses the variables in the query
 string.  Thus causing errors.
  
 Here is the authentication code...
  set session settings from login form
 if (!session_is_registered(valid_user)  $session_login==proc) {
  if ($userid  $password) {
 // if the user has just tried to log in
  
 $db_conn = mysql_connect(localhost);
 mysql_select_db($dbname, $db_conn);
 $query = select * from auth_users 
.where auth_username='$userid' 
. and auth_password='$password' ;
 $result = mysql_query($query, $db_conn);
 if (mysql_num_rows($result) 0 ) {
   // if they are in the database register the user id
   $valid_user = $userid;
   $valid_group=mysql_result($result,0,auth_group);
$valid_perms=mysql_result($result,0,auth_perms);
$valid_auth_id=mysql_result($result,0,auth_id);
   session_register(valid_user);
session_register(valid_group);
session_register(valid_perms);
session_register(valid_auth_id);
 } else {
$invalid_login= Invalid login:  Could not log you in...
!--ERROR: $dbname P $query--;
   }
  }
 }
  
 Any Ideas on how to pass the query string variables through the
 authentication process?  
 


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




Re: [PHP] Sessions and Query String Variable Handling

2002-04-27 Thread Dennis Moore

Thanks,

Is there any way of doing this without using the header() to redirect?  I
have some functions that get executed before the sessions stuff.   I am
trying to avoid using output buffering or re-writing my code.

/dkm




- Original Message -
From: John Holmes [EMAIL PROTECTED]
To: 'Dennis Moore' [EMAIL PROTECTED]; [EMAIL PROTECTED]
Sent: Saturday, April 27, 2002 8:49 PM
Subject: RE: [PHP] Sessions and Query String Variable Handling


 $page = $_SERVER[SERVER_NAME] . $_SERVER[SCRIPT_NAME] .
 $_SERVER[QUERY_STRING];

 That will recreate the URL that the user clicked on. Save that to a
 variable before you check for a session. Once you start a session or
 verify that one exists, use header() to send them back to that page.

 ---John Holmes.

 -Original Message-
 From: Dennis Moore [mailto:[EMAIL PROTECTED]]
 Sent: Saturday, April 27, 2002 2:37 PM
 To: [EMAIL PROTECTED]
 Subject: [PHP] Sessions and Query String Variable Handling

 Env:  Apache 1.3.x/php4.0.6/mysql3.23.x

 Scenario:  I have built a system that uses PHP sessions for user access.
 Within the system I send user notifications via email.   Within the
 email are links to certain pages with variables.  For example.

 http://mysite.com/view_page.htm?id=6

 My system checks to see if the session is valid.  Since the user is
 coming from an email.  There is no session.  So the user is prompted for
 the user and password.  They enter and click submit.  The authentication
 passes the user to right page, but losses the variables in the query
 string.  Thus causing errors.

 Here is the authentication code...
  set session settings from login form
 if (!session_is_registered(valid_user)  $session_login==proc) {
  if ($userid  $password) {
 // if the user has just tried to log in

 $db_conn = mysql_connect(localhost);
 mysql_select_db($dbname, $db_conn);
 $query = select * from auth_users 
.where auth_username='$userid' 
. and auth_password='$password' ;
 $result = mysql_query($query, $db_conn);
 if (mysql_num_rows($result) 0 ) {
   // if they are in the database register the user id
   $valid_user = $userid;
   $valid_group=mysql_result($result,0,auth_group);
$valid_perms=mysql_result($result,0,auth_perms);
$valid_auth_id=mysql_result($result,0,auth_id);
   session_register(valid_user);
session_register(valid_group);
session_register(valid_perms);
session_register(valid_auth_id);
 } else {
$invalid_login= Invalid login:  Could not log you in...
!--ERROR: $dbname P $query--;
   }
  }
 }

 Any Ideas on how to pass the query string variables through the
 authentication process?



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




RE: [PHP] Sessions and Query String Variable Handling

2002-04-27 Thread John Holmes

Not for server side. You can use a META REFRESH on the client side, but
I personally find that ugly. 

This is why I always write my functions so that they don't output
anything. They just assign the output to a variable and return it. That
way, I can call the function anywhere, save the result, and just echo
that variable where ever I need to. 

---John Holmes...

 -Original Message-
 From: Dennis Moore [mailto:[EMAIL PROTECTED]]
 Sent: Saturday, April 27, 2002 5:24 PM
 To: [EMAIL PROTECTED]; [EMAIL PROTECTED]
 Subject: Re: [PHP] Sessions and Query String Variable Handling
 
 Thanks,
 
 Is there any way of doing this without using the header() to redirect?
I
 have some functions that get executed before the sessions stuff.   I
am
 trying to avoid using output buffering or re-writing my code.
 
 /dkm
 
 
 
 
 - Original Message -
 From: John Holmes [EMAIL PROTECTED]
 To: 'Dennis Moore' [EMAIL PROTECTED];
[EMAIL PROTECTED]
 Sent: Saturday, April 27, 2002 8:49 PM
 Subject: RE: [PHP] Sessions and Query String Variable Handling
 
 
  $page = $_SERVER[SERVER_NAME] . $_SERVER[SCRIPT_NAME] .
  $_SERVER[QUERY_STRING];
 
  That will recreate the URL that the user clicked on. Save that to a
  variable before you check for a session. Once you start a session or
  verify that one exists, use header() to send them back to that page.
 
  ---John Holmes.
 
  -Original Message-
  From: Dennis Moore [mailto:[EMAIL PROTECTED]]
  Sent: Saturday, April 27, 2002 2:37 PM
  To: [EMAIL PROTECTED]
  Subject: [PHP] Sessions and Query String Variable Handling
 
  Env:  Apache 1.3.x/php4.0.6/mysql3.23.x
 
  Scenario:  I have built a system that uses PHP sessions for user
access.
  Within the system I send user notifications via email.   Within the
  email are links to certain pages with variables.  For example.
 
  http://mysite.com/view_page.htm?id=6
 
  My system checks to see if the session is valid.  Since the user is
  coming from an email.  There is no session.  So the user is prompted
for
  the user and password.  They enter and click submit.  The
authentication
  passes the user to right page, but losses the variables in the query
  string.  Thus causing errors.
 
  Here is the authentication code...
   set session settings from login form
  if (!session_is_registered(valid_user)  $session_login==proc)
{
   if ($userid  $password) {
  // if the user has just tried to log in
 
  $db_conn = mysql_connect(localhost);
  mysql_select_db($dbname, $db_conn);
  $query = select * from auth_users 
 .where auth_username='$userid' 
 . and auth_password='$password' ;
  $result = mysql_query($query, $db_conn);
  if (mysql_num_rows($result) 0 ) {
// if they are in the database register the user id
$valid_user = $userid;
$valid_group=mysql_result($result,0,auth_group);
 $valid_perms=mysql_result($result,0,auth_perms);
 $valid_auth_id=mysql_result($result,0,auth_id);
session_register(valid_user);
 session_register(valid_group);
 session_register(valid_perms);
 session_register(valid_auth_id);
  } else {
 $invalid_login= Invalid login:  Could not log you in...
 !--ERROR: $dbname P $query--;
}
   }
  }
 
  Any Ideas on how to pass the query string variables through the
  authentication process?
 
 
 
 --
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php