Buenas a todos,
Tengo una duda tengo dos ficheros (test.php y cart.php) el test es la pagina normal y cart.php una clase, lo que quiero hacer es los siguiente:
Código PHP:
<?php
class cart{
public $_SESSION;
function cart(){
session_start();
if(!isset($_SESSION['cart'])){
$this->$_SESSION['cart'] = array(); // si esta vacia inicio la session en modo array
}
}
function add_item($id_item){
session_start();
if($_SESSION['cart'][$id_item]['id'] == $id_item){ // si encuentra en la array la id autoincremento la cantidad
$_SESSION['cart'][$id_item]['quantity'] += 1;
}else{// si no esta la iniciamos
$_SESSION['cart'][$id_item]['id'] = $id_item;
$_SESSION['cart'][$id_item]['name'] = "ola";
$_SESSION['cart'][$id_item]['quantity'] = 1;
}
return print_r($_SESSION['cart']);
}
}
?>
y el test.php
Código PHP:
session_start();
include_once('class/cart.php');
$cart = new cart();
$cart->add_item(250);
Pues el problema esta en que la única manera que consigo introducir algo en la sesión es diciendo en el principio de la función (add_item) que la $_SESSION['cart'] = array(); pero claro esta me elimina todo lo que tenia en la sesión.
Sabe alguien como puedo hacer que no pierda los datos de la array.
Gracias.