Ver Mensaje Individual
  #6 (permalink)  
Antiguo 28/03/2011, 12:00
Jheiron
 
Fecha de Ingreso: enero-2011
Mensajes: 45
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: variable $_SESSION vacia

Código PHP:
<?php
//session_unset();borra todas la variables de session
class carrito 
       
//atributos de la clase 
    
var $num_productos
    var 
$array_id_prod
    var 
$array_nombre_prod
    var 
$array_precio_prod
     

       
//constructor. Realiza las tareas de inicializar los objetos cuando se instancian 
       //inicializa el numero de productos a 0 
       
function carrito () { 
       
$this->num_productos=0
       } 

       
//Introduce un producto en el carrito. Recibe los datos del producto 
       //Se encarga de introducir los datos en los arrays del objeto carrito 
       //luego aumenta en 1 el numero de productos 
       
function introduce_producto($id_prod,$nombre_prod,$precio_prod){ 
           
$this->array_id_prod[$this->num_productos]=$id_prod
           
$this->array_nombre_prod[$this->num_productos]=$nombre_prod
           
$this->array_precio_prod[$this->num_productos]=$precio_prod
           
$this->num_productos++;
           } 
       

       
//Muestra el contenido del carrito de la compra 
       //ademas pone los enlaces para eliminar un producto del carrito 
       
function imprime_carrito(){ 
            
$suma 0;
          
          echo 
'<table border=0 cellpadding="3"> 
           <tr> 
           <td><b>Nombre producto</b></td> 
           <td><b>Precio</b></td> 
           <td> </td> 
           </tr>'

           for (
$i=0;$i<$this->num_productos;$i++){ 
              if(
$this->array_id_prod[$i]!=0){ 
                 echo 
'<tr>'
                 echo 
"<td>" $this->array_nombre_prod[$i] . "</td>"
                 echo 
"<td>" $this->array_precio_prod[$i] . "</td>"
                 echo 
"<td><a href='elimina_carrito.php?linea=$i'>Eliminar producto</td>"
                 echo 
'</tr>'
                 
$suma += $this->array_precio_prod[$i]; 
              } 
$array_precio_prodnumber_format($array_precio_prod);
           } 
         
         
$total_precio $suma 1.16;
         
$total_precio "$".number_format($total_precio).".00";
          
$suma ="$".number_format($suma).".00";
           
//muestro el total 
           
echo "<tr><td><b>TOTAL:</b></td><td> <b>$suma</b></td><td> </td></tr>"
           
//total más IVA 
           
echo "<tr><td><b>Impuesto (16%):</b></td><td> <b>" $total_precio "</b></td><td> </td></tr>";
           echo 
"<tr><td><b>Productos Elegidos:</b></td><td> <b>" $i"</b></td><td> </td></tr>"
           echo 
"</table>"
       } 

       
//elimina un producto del carrito. recibe la linea del carrito que debe eliminar 
       //no lo elimina realmente, simplemente pone a cero el id, para saber que esta en estado retirado 
       
function elimina_producto($linea){ 
           
$this->array_id_prod[$linea]=0
       } 
}

if (!isset(
$_SESSION["ocarrito"])){ 
       
$_SESSION["ocarrito"] = new carrito(); 
}

?>
esa es la clase k toy usanod.... y taba mirando esto..creo k es el problema
Código PHP:
if (!isset($_SESSION["ocarrito"])){ 
       
$_SESSION["ocarrito"] = new carrito(); 

segun explicaban en el codigo, eso es para k cuando no aiga una session se cree sola...
creen k ese sea el problema?