Ok by now your probably all sick of hearing me ask these questions, but my hopes at this point are that someone out there will get so frustrated they will have to give me a good answer so i'll shutup.

Ok so I made a class Cart with a buncha shopping cart functions such as add() and remove(). After that I started a session (session_start()). Then I registered a session variable (session_register("SESSION")). Then I set $SESSION as an array ($SESSION = array()). And then made the class Cart an entry in the array ($SESSION["cart"] = new Cart). Hehee ok simple enough. I've been calling the function add() (in the class Cart) the add function looks like this...

function add(&$productid, $qty) {

if (isset($productid)) {
setdefault($this->items[$productid], 0);
$this->items[$productid] += $qty;
}
}

Right about now your like, "so what the hell is $this->items[]. Well I'll tell yah their used to initalize a new shopping cart and store the product id. Heres where it does it...

var $items; /* array of items */
function Cart() {
/* object constructor */

$this->init();
}
function init() {
/* this function is called to initialize (and reset) a shopping cart*/

$this->items = array();
$this->total = 0;
}

Ok this much I understand I do believe all the information exchanged when the function add() is called is somehow stored in the session I registered in the beginning. This is all I know and i'm very confused because now i'm trying to take that damn product ID thats stored somehow in the session and reference it against the product ID's in my mySQL database to display the adjoining product name and product price. I've bothered a ton of people in irc channels and posted in way to many online forum's and I still can't lick this one, would someone please be kind enough to help? If you do please understand i'm really new and try an explain in laymen's terms.