RE: [PHP-DB] Viewing Session Varibles

2002-02-07 Thread JD Daniels

Like so:

echopre;
print_r($_SESSION); 
echo/pre:

I think for PHP less 4.04, you need $HTTP_SESSION_VARS Instead.

JD

-Original Message-
From: Robert Weeks [mailto:[EMAIL PROTECTED]]
Sent: Thursday, February 07, 2002 8:45 AM
To: php
Subject: [PHP-DB] Viewing Session Varibles


Is there an easy way to get a dump to the page of all session varibles?

I'm trying to create an associtave array in a session varible named cart
($item1 =$qty1, $item3=$qty2, etc.) and i can't seem to wrap my brain
around it this morning. I get the item set but can't get the $qty to set.

Thanks,

Robert Weeks


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


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




Re: [PHP-DB] Viewing Session Varibles

2002-02-07 Thread Robert Weeks

Ok,

This is driving me nuts. I'm sure its something simple but I can't seem to
find the glitch.

I'm trying to make a simple shopping cart using Session varibles to store
the item = quantity pairs, then I loop thru the cart and query the db to
get the item details, etc.. Most of it works fine but whenever I add a new
item to the cart I lose the $qty value for the other items.

Here is the code in question:

++

?

session_start();

include 'inc/common.inc.php';

if (!session_is_registered(cart))
{
 $cart = array();
 session_register(cart);
 $items = 0;
 session_register(items);
}

if($cart[$new])
{
 $cart[$new]++;
}else{
 $cart[$new] = 1;
}

foreach ($cart as $id = $qty)
{
if ($$id == 0)
{
 unset ($cart[$id]);
}else{
 $cart[$id] = $$id;
}

$items = calculate_items($cart);

foreach ($cart as $id = $qty){

$db = mysql_connect(localhost, $databaseuser, $databasepasswd) or die
(Unable to connect to database!);

mysql_select_db ($databasename,$db) or die (Unable to connect to database
$db!);

$result = mysql_query (SELECT * from products WHERE id = '$id') or die
(Error in query.  . mysql_error());

if ($result){

extract(mysql_fetch_array($result));

echo bTitle:/b $titlebr /;
echo bDescription:/b $p_descbr /;
echo bPrice:/b $pricebr /;
echo bQuantity:/b $qtybr /;
echo hr /;
 }
}

#print varibles to screen for debugging

echopre;
print_r($HTTP_SESSION_VARS);
echo/pre;

?

+

If one item is in the cart I get this from the $HTTP_SESSION_VARS:

Array
(
[cart] = Array
(
[10] = 12
)

[items] = 12
[total_price] = 0.00
)

That would indicate to me that the cart pair has been saved.
But as I add items I lose the earlier quantities:

Array
(
[cart] = Array
(
[10] =
[16] =
[13] = 6
)

[items] = 6
[total_price] = 0.00
)

The $id is still there and I can query the db just fine, but no quantity.

I don't know why this is eluding me but any help would be greatly
appreciated.

Thanks,

Robert


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




RE: [PHP-DB] Viewing Session Varibles

2002-02-07 Thread JD Daniels

hmmm...  If I was you.. I would make your cart an object.. build a simple
class like:

class Cart
{

var $items;

function Cart()
{
$this-items=Array();
}

function Add_To_Cart($item)
{
if(!in_array($item,$this-items)
{
Array_Push($this-items,$items;
}
}

function Remove_From_Cart($item)
{
if(in_array($item,$this-items)
{
unset($this-item[$items);
}
}
}

So in your script:
session_start();
if (!session_is_registered(cart))
{
 $cart = new Cart;
 session_register(cart);
}
/* now you should be able to get everything like this */
$cart-Add_To_Cart($whatever);
$cart-Remove_From_Cart($whatever);

/* where $whatever is the array of item data... first of which would be the
id */

then you can manipulate it how ever you like.. just make the function inside
the cart clas and call it by $cart-function_name();

This way the only thing stored in the session is the object.. which contains
it all in place you can handle it. This is the only way I got reliable use
out sessions :p

I just whipped this off the top of my head.. so may not work :)

JD


-Original Message-
From: Robert Weeks [mailto:[EMAIL PROTECTED]]
Sent: Thursday, February 07, 2002 10:41 AM
To: php
Subject: Re: [PHP-DB] Viewing Session Varibles


Ok,

This is driving me nuts. I'm sure its something simple but I can't seem to
find the glitch.

I'm trying to make a simple shopping cart using Session varibles to store
the item = quantity pairs, then I loop thru the cart and query the db to
get the item details, etc.. Most of it works fine but whenever I add a new
item to the cart I lose the $qty value for the other items.

Here is the code in question:

++

?

session_start();

include 'inc/common.inc.php';

if (!session_is_registered(cart))
{
 $cart = array();
 session_register(cart);
 $items = 0;
 session_register(items);
}

if($cart[$new])
{
 $cart[$new]++;
}else{
 $cart[$new] = 1;
}

foreach ($cart as $id = $qty)
{
if ($$id == 0)
{
 unset ($cart[$id]);
}else{
 $cart[$id] = $$id;
}

$items = calculate_items($cart);

foreach ($cart as $id = $qty){

$db = mysql_connect(localhost, $databaseuser, $databasepasswd) or die
(Unable to connect to database!);

mysql_select_db ($databasename,$db) or die (Unable to connect to database
$db!);

$result = mysql_query (SELECT * from products WHERE id = '$id') or die
(Error in query.  . mysql_error());

if ($result){

extract(mysql_fetch_array($result));

echo bTitle:/b $titlebr /;
echo bDescription:/b $p_descbr /;
echo bPrice:/b $pricebr /;
echo bQuantity:/b $qtybr /;
echo hr /;
 }
}

#print varibles to screen for debugging

echopre;
print_r($HTTP_SESSION_VARS);
echo/pre;

?

+

If one item is in the cart I get this from the $HTTP_SESSION_VARS:

Array
(
[cart] = Array
(
[10] = 12
)

[items] = 12
[total_price] = 0.00
)

That would indicate to me that the cart pair has been saved.
But as I add items I lose the earlier quantities:

Array
(
[cart] = Array
(
[10] =
[16] =
[13] = 6
)

[items] = 6
[total_price] = 0.00
)

The $id is still there and I can query the db just fine, but no quantity.

I don't know why this is eluding me but any help would be greatly
appreciated.

Thanks,

Robert


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


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