Ver Mensaje Individual
  #5 (permalink)  
Antiguo 15/03/2005, 07:59
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No he leido en profundidad dicho artículo .. pero la forma de trabajar con el objeto y las sesiones no me agrada mucho .. Yo usaría la siguiente construcción:

introduce_items_carrito.php
Código PHP:
<?
include("../lib_carrito.php"); 
session_start();
if (!isset(
$_SESSION["ocarrito"])){ 
    
$carrito= new carrito(); 
} else
   
$carrito=$_SESSION["ocarrito"] ;
}

// y luego uso $carrito->metodos_que_correspondan() ...
$carrito->introduce_producto($_GET["id"], $_GET["nombre"], $_GET["precio"]);


// Para dejar todo cambio en la sesión .. si no lo hace el objeto como así parecer .. tendrás que hacer:
$_SESSION['ocarrito']=$carrito;
// y redireccionar a donde corresponda .. por ejemplo a otro script que haga el listado de lo que tengas en el carrito:
header ("Location: ver_carrito.php");
exit;
?>
Es decir .. si la sesión existe .. la sigo usando (ya está instanaciada y tiene sus variables) .. si no existe . .la defino y la instancio (el new es la "instancia").

El uso de session_start() es insprescindible para acceder a tus variables de sesión .. (no sé si en include("../lib_carrito.php"); se define .. si es así puedes omitirlo ahí ..)

Por cierto .. todo ese HTML de "lib_carrito.php" sobra .. no sé por qué lo usas ahí .. eso es un objeto que tiene su formato y sus métodos .. por otro lado es donde lo usas.

Un saludo,

Última edición por Cluster; 15/03/2005 a las 08:04