Hola, mi problema es el sisguiente:
Estoy haciendo un carrito de la copmpra y al actualizar el objeto que guardo en sesión, este no actúa:
Los dos archivos con los que estoy tratando son ""carrito.php" y"index.php"
"carrito.php"
<?php
class Carrito {
var $num_productos=2;
var $array_id_prod;
var $array_nombre_prod;
var $array_precio_prod;
//Constructor de la clase
function __construct() {
$num_productos = 9;
}
//Constructor de la clase
function Carrito() {
$num_productos = 9;
//}
function a(){
$num_productos += 17;
return $num_productos;
}
/*
?>
index.php: (pongo lo importante)
include ("clases/carrito.php");
session_start();
if (!isset($_SESSION["carroCompra"])){
$_SESSION["carroCompra"] = new Carrito();
echo "Instanciado por primera vez";
}
echo $_SESSION["carroCompra"]->num_productos;
echo "<br/>"
echo $_SESSION["carroCompra"]->a();
La primera vez que entro, pasa por "instanciado por primera vez" y las siguientes no (eso es correcto).
ahora el problema/problemas:
-la primera vez que entro saca por pantalla:
Instanciado por primera vez
2
17
cuando creo que debería sacar 9 y 26.
creo que está omitiendo el constructor.
y el método a(), no añade 17 a lo que ya había (2 o 9) sino que se queda en 17 (como si el número que había fuese 0 o nulo)
-las siguientes veces siempres saca lo mismo:
2
17
los problemas son los mismos que en el caso anterior.
Me estoy volviendo un poco loco con esto.