"Michael R. Wayne" <[EMAIL PROTECTED]> wrote in message
news:[EMAIL PROTECTED]
>
> I've posted several times mentioning that I am completely unable
> to cause sessions to persist.  Over the intervening time, I have
> replicated this problem to a different machine, with the same
> results.  Here's a recap of the problem.
>
> I am not using cookies.  Sessions are automatically created (and
> changing that makes no difference)  The relevant session variables
> (copied from phpinfo) are:
>    Session Support              enabled
>    session.auto_start           On <- hence no session_start
>    session.name PHPSESSID
>    session.use_cookies          Off <- no cookies
>    session.use_trans_sid        On
>
> Environment is FreeBSD4.8.  phpinfo for apache says:
>    Apache/1.3.29 (Unix) mod_perl/1.28 PHP/4.3.4 mod_ssl/2.8.16
OpenSSL/0.9.6d
>
>
> Here is a cut/paste of the borwser screen for the code below:
>
>    Stage:0 SessionID: 04ace04b1fe0bc81d2cd678c9bab1619
>    _____ [Submit]
>    Stage:1 SessionID: 04ace04b1fe0bc81d2cd678c9bab1619 Request: Array ( )
>
> So I type "foo" into the box and hit submit.  And the session variable
> is NOT preserved:
>
>    Stage:0 SessionID: 55c70989b7279d6a18edfd81b28d67a6
>    foo___ [Submit]
>    Stage:1 SessionID: 55c70989b7279d6a18edfd81b28d67a6 Request: Array
 [PHPSESSID] => 04ace04b1fe0bc81d2cd678c9bab1619 [field] => foo )
>
> The session directory IS writable and I see the expected information
> being written there:
>    -rw-------  1 nobody   wheel      10 May 21 13:35
sess_04ace04b1fe0bc81d2cd678c9bab1619
>    -rw-------  1 nobody   wheel      10 May 21 13:38
sess_55c70989b7279d6a18edfd81b28d67a6
>
> Apache runs as user "nobody" on this server.  Both session files contain:
>    stage|i:1;
> but the files never seem to be being read back!
>
> Help!?
>
>
> Here's the entire php code I'm testing with:
>
> <?
> if (!isset($_SESSION['stage'])) {
>    $_SESSION['stage'] = 0;
>    }
> if (!isset($_POST['field'])) { $_POST['field'] = ""; }
> ?>
> <html>
> <head><title>PHP Test page</title></head>
> <body>
> <?
>   echo "Stage:"; echo $_SESSION['stage'];
>   echo " SessionID: "; echo session_id();
>   $_SESSION['stage'] = 1;
> ?>
>    <form method="post" action="xxx.php">
>       <input type="text" maxlength="7" size="7" name="field" value="<?echo
$_POST['field']?>">
>       <input type="submit" value="Submit">
>    </form>
> <?
>   echo "Stage:"; echo $_SESSION['stage']; echo " ";
>   echo " SessionID: "; echo session_id(); echo " ";
>   echo " Request: "; print_r($_REQUEST);
> ?>
> </body> </html>

As far as I remember session.use_trans_sid does NOT work with forms (action
attribute). Have you tried appending it manually to the action?:

<form method="post" action="xxx.php<?= SID; ?>">

Regards, Torsten

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

Reply via email to