Tienes que recorrer los productos para ver si el elegido ya está en el carrito y, de hecho, no sirve de mucho tener el contador, porque puedes agregar productos sin necesidad de él.
Código PHP:
Ver original // Primero asegúrate de que tengas un array para agregar los productos
// Tal vez lo haces en otra parte de tu script, pero como no lo muestras, aquí va:
if(!isset($_SESSION['producto'])) { $_SESSION['producto'] = array(); // Si necesitas mostrar la cantidad total de productos en el carrito
// Usa la siguiente variable
$_SESSION['total_productos'] = 0;
}
// Luego, necesitas verificar que lo que viene en GET sea un producto válido
$producto = $_GET['p'];
// Necesitas hacer una consulta para verificarlo, algo como:
// SELECT descripcion FROM productos WHERE id = $producto
// Ahora, usa la ID del producto como índice para buscar si ya está en carrito:
if(isset($_SESSION['producto'][$producto])) { // Ya está, solo suma 1
$_SESSION['producto'][$producto] ++;
} else {
// El producto no está en carrito
$_SESSION['producto'][$producto] = 1;
}
$_SESSION['total_productos'] ++;
}