1
I’m trying to play some values in a session variable to later use it in a shopping cart, but I’m not getting it, the values are the id
and the quantidade
.
What I did was this:
The form:
<form method="get" action="addtocart.php">
<div class="product-quantity">
<span>Quantity:</span>
<input type="hidden" name="id" value="<?php echo $prodr['id']; ?>">
<input type="text" name="quant" value="1">
</div>
<div class="shop-btn-wrap">
<input type="submit" class="button btn-small" value="Add to Cart">
</div>
</form>
session_start(); if(isset($_GET) && !empty($_GET)){ $id = $_GET['id']; $quant = $_GET['quant']; if (isset($quant) && !empty($quant)) { $quant = $_GET['quant']; } else { $quant = 1; } $_SESSION['cart'][$id] = array("quantity" => $quant); print_r($_SESSION['cart'][$id]); exit; header('location: cart.php'); } else { header('location: cart.php'); }
The variables $id
and $quant
have values, but when having display by print_r()
nothing is displayed.
As suggested, follows test results:
print_r($_GET); Array ( [id] => 21 [quant] => 1 )
print_r($_SESSION); Array ( [cart] => 1 [id] => Array ( [19] => 19 ) [quanr] => Array ( [19] => 1 ) [quant] => Array ( [19] => 1 ) )
That second print_r
appeared this [quanr]
and I don’t know where he came from.
Are you sure you are sending via GET?
– Sam
Yes, this is being sent by GET and have values.
– adventistapr
Strange. I tested here with a simple form and it worked normal.
– Sam
print_r($_GET);
andprint_r($_SESSION);
after the first line give what ?– Isac
What exactly happens? If you enter the condition, you should display the result of
print_r
, otherwise it will be redirected. Which of the two occurs? Taking advantage of the contact, why use&
instead of&&
in condition?– Woss
Gives a
session_destroy()
and starts the tests again. It seems that you are accumulating a lot rubbish in the previous typing errors session.– Woss