Foros del Web » Programando para Internet » PHP »

llamar variable dentro de clase

Estas en el tema de llamar variable dentro de clase en el foro de PHP en Foros del Web. yo si molesto pero bueno.. Expertos en PHP... mi pregunta es.... como hago para llamar a parametros de una funcion que esta dentro de una ...
  #1 (permalink)  
Antiguo 29/03/2011, 08:51
 
Fecha de Ingreso: enero-2011
Mensajes: 45
Antigüedad: 13 años, 2 meses
Puntos: 1
Pregunta llamar variable dentro de clase

yo si molesto pero bueno..

Expertos en PHP...

mi pregunta es.... como hago para llamar a parametros de una funcion que esta dentro de una clase..
stoy haciendo una tienda online y con una clase hago el carito de compra, pero dentro de la clase hay una funcion que imprime el carrito y en el css ahi una parte en el menu que muestra el carrito y lo que quiero es que en el carrito que aparece en el menu aparescan solamente la cantidad de productos que a elegido el usuario y el total, que conste que los productos elegidos se van agregando por un FOR y quiero imprimir la variable del FOR que esta en la clase que esta en la funcion que imprime el carrito, como hago para sacar esa variable...

y otra cosa hago todo por la variable $_session no almaceno los usuarios en la base de datos

si alguien sabe ayudemeeee jajaja :/
  #2 (permalink)  
Antiguo 29/03/2011, 09:03
Avatar de luis010182  
Fecha de Ingreso: julio-2009
Ubicación: Argentina - Capital Federal
Mensajes: 382
Antigüedad: 14 años, 8 meses
Puntos: 27
Respuesta: llamar variable dentro de clase

Lo que podes hacer es declara un atributo nuevo para el objeto por ejemplo $totalCarrito, el cual vas a cargar la suma total dentro del for.
y cuando lo necesites lo llamas como lo haces con cualquier otro atributo.
En caso de que este for, no lo recorras siempre en todas las paginas, tedrias usar una varibles de session.

Espero que te sirva
  #3 (permalink)  
Antiguo 29/03/2011, 09:10
 
Fecha de Ingreso: enero-2011
Mensajes: 45
Antigüedad: 13 años, 2 meses
Puntos: 1
Respuesta: llamar variable dentro de clase

ok... yo uso variables de session para eso del for... pero no entendi eso de creear un atributo nuevo... k conste k no se usar clases, soy nuevo en esa parte...

este es el codigo completo y me diras entonces como acerlo si no es mucha molestia

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="0">'
         
//echo '<div class="shopping_cart">';
          //echo '<table border=0 cellpadding="0" width="0">';
          //echo '<div class="cart_title">Carrito de Compra</div>';
          
           
echo '<tr>'
           echo 
'<td><b>Nombre producto</b></td>'
           echo 
'<td><b>Precio</b></td>'
           echo 
'<td> </td>'
           echo 
'</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);
           } 
        
// echo '<div class="cart_details">';
        
         
$total_precio $suma 1.16;
         
$total_precio "$".number_format($total_precio).".00";
          
$suma ="$".number_format($suma).".00";
           
//muestro el total 
          // echo '<span class="border_cart"></span>';
           
echo '<tr><td><b>TOTAL:</b></td><td> <b><span class="price">'.$suma.'</span></b></td><td></td></tr>'
           
//total más Impuestos 
           
echo "<tr><td><b>Impuesto (16%):</b></td><td> <b><span class='price'>" $total_precio "</span</b></td><td> </td></tr>";
           echo 
"<tr><td><b>Productos Elegidos:</b></td><td> <b>" $i"</b></td><td> </td></tr></span>"
           
          
         
        
// echo'</div>';
                  
          // echo '</div>'; 
           
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(); 
}




?>
y cuando kiero imprimir el carrito lo ago asi
Código PHP:
session_start();
$_SESSION["ocarrito"]->imprime_carrito(); 

Etiquetas: clase, session, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:51.