Fwd: [PHP] SESSIONS
| From: | Bastien Koert | Date: | Fri, 02 Jan 2015 04:24:31 +0000 |
| Subject: | Fwd: [PHP] SESSIONS | ||
| References: | 1 2 3 4 5 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-324214@lists.php.net to get a copy of this message | ||
Copying list as new Inbox seems to be missing a reply-all choice
Bastien
---------- Forwarded message ----------
From: *Bastien Koert* <phpster@gmail.com>
Date: Thursday, January 1, 2015
Subject: [PHP] SESSIONS
To: erosenberg@hygeiabiomedical.com
Ethan,
As was explained in another post, sessions DO NOT WORK when you call
shell_exec because the browser the user is using holds the session cookie
WHICH IS NOT AVAILABLE during a shell_exec
This is totally expected behavior. If you need to call the second script
via a cron for example, no session variables will exist. Your script would
have to generate those values (perhaps from a database call to some table)
to have those available in the script.
If your first script is calling shell_exec ( calling shell_exec from a
script to another script in processing a browser call is just weird) then
you would have to pass the session values you need in the shell_exec call
as parameters.
Bastien
On Thu, Jan 1, 2015 at 11:13 PM Ethan Rosenberg, PhD <
erosenberg@hygeiabiomedical.com
<javascript:_e(%7B%7D,'cvml','erosenberg@hygeiabiomedical.com');>>
wrote:
> Dear List -
>
> I can make it work, but I do not know why???
>
> I have two scripts, HandleWeight and HandleFood.
>
> I call HandleWeight from a form ...
>
>
> echo "<form method= 'post' action='HandleWeight.php'>";
> echo "<center><strong><input type = 'submit' value=
> 'WEIGH'></strong></center>";
> echo "</form>";
>
> and the session variables appear in HandleWeight.
>
> I call HandleFood with a shell_exec,
>
> $output = shell_exec('php HandleFood.php');
>
> and the variables do not appear in HandleFood.
>
> If I call it from a form, the variables appear.
>
> What is going on??
>
> TIA
>
> Ethan
> --
>
> On 01/01/2015 07:39 PM, David OBrien wrote:
> >
> >
> > On Thursday, January 1, 2015, Stuart Dallas <stuart@3ft9.com
> <javascript:_e(%7B%7D,'cvml','stuart@3ft9.com');>
> <mailto:stuart@3ft9.com
> <javascript:_e(%7B%7D,'cvml','stuart@3ft9.com');>>> wrote:
> >
> > Before I look at the code in any sort of detail, what do you mean by
> "from
> > the terminal"?
> >
> > On Friday, January 2, 2015, Ethan Rosenberg <
> erosenberg@hygeiabiomedical.com
> <javascript:_e(%7B%7D,'cvml','erosenberg@hygeiabiomedical.com');>
> <javascript:;>>
> > wrote:
> >
> > > Dear List -
> > >
> > > My session variables do not seem to propagate....
> > >
> > > a.php
> > >
> > > <?php
> > >
> > > session_name("STORE");
> > > session_set_cookie_params( '24000', '/' );
> > > session_start();
> > > ?>
> > >
> > > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> > > "
> > >
> > > http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> > >
> > > <snip>
> > >
> > > global $cxn;
> > > global $sale;
> > > global $tax_rate;
> > > global $tax;
> > > $upc = $_POST['UPC'];
> > > $_SESSION['UPC'] = $_POST['UPC'];
> > > <snip>
> > >
> > > case 'step3':
> > > {
> > > echo 'step3';
> > > global $cxn;
> > > global $sale;
> > > global $tax_rate;
> > > global $tax;
> > > $upc = $_POST['UPC'];
> > > $_SESSION['UPC'] = $_POST['UPC'];
> > > echo 'sess';
> > > print_r($_SESSION);
> > > echo '<br />';
> > > if(strlen($upc)< 5) // the value is a 4 digit
> > > // code, which is used for fruits and
> vegatables
> > > {
> > > $sql7 = "select WeightFlag from Food
> where PLU =
> > > $upc";
> > > $result7 = mysqli_query($cxn, $sql7);
> > > $row7 = mysqli_fetch_row($result7);
> > >
> > > }
> > > echo 'row7';
> > > print_r($row7);
> > > if($row7[0] != 0)
> > > {
> > >
> > >
> > > echo "<form method= 'post'
> > > action='HandleWeight.php'>";
> > > echo "<center><strong><input type =
> 'submit'
> > > value= 'WEIGH'></strong></center>";
> > > echo "</form>";
> > > exit();
> > > }
> > > echo 'SQL11';
> > > $sql11= "$row[7] IS NULL OR $row[7] == ''
> > > ";
> > > if($sql11)
> > > print_r($_POST);
> > > print_r($_SESSION);
> > > {
> > >
> > > $output = shell_exec('php
> HandleFood.php');
> > > echo $output;
> > >
> > > }
> > > break;
> > >
> > > } //end step3
> > > ------------------
> > > From the terminal -
> > >
> > > step3sessArray
> > > (
> > > [UPC] => 3127
> > > )
> > >
> > > row7Array
> > > (
> > > [0] => 0
> > > )
> > > SQL11Array
> > > (
> > > [UPC] => 3127
> > > [welcome_already_seen] => already_seen
> > > [next_step] => step3
> > > )
> > > Array
> > > (
> > > [UPC] => 3127
> > > )
> > >
> > >
> > > --------
> > >
> > > HandleFood.php
> > >
> > > <?php
> > > session_name("STORE");
> > > session_set_cookie_params( '24000',
> > > '/' );
> > > set_time_limit(2400);
> > > session_start();
> > > ?>
> > >
> > > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
> > > "
> > >
> > > http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> > >
> > > <snip>
> > >
> > > echo 'sess<br />';
> > > print_r($_SESSION);
> > > global $cxn;
> > > global $sale;
> > > global $tax_rate;
> > > global $tax;
> > > $upc = $_SESSION['UPC'];
> > >
> > > echo 'ses2<br />';
> > > print_r($_SESSION);
> > > -----
> > > From the terminal --
> > >
> > > sess
> > > Array
> > > (
> > > )
> > > ses2
> > > Array
> > > (
> > > )
> > >
> > > What am I doing wrong??
> > >
> > > TIA
> > >
> > > Ethan
> > >
> > >
> > >
> > >
> > >
> > > --
> > > PHP General Mailing List (http://www.php.net/)
> > > To unsubscribe, visit:
> > > http://www.php.net/unsub.php
> > >
> > >
> >
> > --
> > -Stuart
> >
> > --
> > Stuart Dallas
> > 3ft9 Ltd
> > http://3ft9.com/
> >
> >
> >
> > Besides running from the terminal which won't set a session since the
> browser controls cookies and
> > stuff
> >
> > shouldn't session_start go first?
>
>
> --
> Ethan Rosenberg, PhD
> /Pres/CEO/
> *Hygeia Biomedical Research, Inc*
> 2 Cameo Ridge Road
> Monsey, NY 10952
> T: 845 352-3908
> F: 845 352-7566
> erosenberg@hygeiabiomedical.com
> <javascript:_e(%7B%7D,'cvml','erosenberg@hygeiabiomedical.com');>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
--
Bastien
Cat, the other other white meat