Hola David.
Simplemente...




Era eso !! Supongo que son cosas del globals en OFF, ya que he aprendido con él en ON, y no sé muy bien en qué partes de los script se ve afectado....
Ha quedado así:
Código PHP:
<?
include ('book_sc_fns.php');
// El carrito de compra necesita sesiones, así que iniciar una.
session_start();
$new = $_GET['new'];
$cart = $_SESSION['cart'];
$items = $_SESSION['items'];
$total_price = $_SESSION['total_price'];
if($new)
{
//nuevo artículo seleccionado
if(!isset($cart))
{
$_SESSION["cart"];
$_SESSION["items"] = 0;
$_SESSION["total_price"] = "0.00";
}
if($cart[$new])
{ $cart[$new]++; }
else
{ $cart[$new] = 1; }
$total_price = calculate_price($cart);
$items = calculate_items($cart);
}
Y en la última lkinea del script, he vuelto a poner:
Código PHP:
$_SESSION['cart'] = $cart;
$_SESSION['items'] = $items;
$_SESSION['total_price'] = $total_price;
Si no ponía las tres variables de sesión, no se actualizaba bien el contenido del carro que secarga en la cabecera......
CONFIRMAME por favor esto: Con globals OFF, hay que "llamar" a las variables de sesión al principio del script con
Código PHP:
$cart = $_SESSION['cart'];
Y para que las modificaciones que sufra la variable durante el script queden "grabadas" en ella, hay que poner al final
Código PHP:
$_SESSION['cart'] = $cart;
¿Es así? Curioso...
MILLONES DE GRACIAS, DAVID.
No sé si por casualidad estás en Valencia o alrededores (y si no lo mismo da, lo digo por cercanía), pero cuando quieras pegarte un buen almuerzo, sólo tienes que decirmelo, y elegir el sitio (en Valencia, claro

).
Un saludo