Ver Mensaje Individual
  #1 (permalink)  
Antiguo 22/01/2013, 21:53
potoka
 
Fecha de Ingreso: octubre-2009
Mensajes: 107
Antigüedad: 14 años, 6 meses
Puntos: 2
Almacenar lo retornado por un método en variable para ser enviado por mail

Hola a todos! como expreso en el título, tengo la situación en que estoy usando Jcart para un carrito de compras y, una vez que se realiza la misma, muestro los productos elegidos por pantalla pero, además, quiero enviarlos por mail.
Para ver el detalle lo hago así:
Código PHP:
echo $_SESSION['jcart']->getCart(); 
Donde getCart() consiste en:
Código PHP:
public function getCart(){
        
$config $this->config
        
$errorMessage null;
        
$priceFormat $config['priceFormat'];
        
$checkout $config['checkoutPathGetCart'];
        
$isCheckout strpos(request_uri(), $checkout);
        if (
$isCheckout !== false || $_REQUEST['jcartIsCheckout'] == 'true') {
            
$isCheckout true;
        }
        else {
            
$isCheckout false;
        }
        
        
////////////////////////////////////////////////////////////////////////
        // Output the cart

        // Return specified number of tabs to improve readability of HTML output
        
function tab3($n) {
            
$tabs3 null;
            while (
$n 0) {
                
$tabs3 .= "\t";
                --
$n;
            }
            return 
$tabs3;
        }

        
// If there's an error message wrap it in some HTML
        
if ($errorMessage)    {
            
$errorMessage "<p id='jcart-error'>$errorMessage</p>";
        }

        
// Display the cart header
        
echo tab3(1) . "$errorMessage\n";
        echo 
tab3(2) . "<fieldset>\n";
        echo 
tab3(2) . "Descripción de su compra\n";
        echo 
tab3(3) . "<table border='1'>\n";
        
        
// Display the cart footer
        
echo tab3(4) . "<tfoot>\n";
        echo 
tab3(5) . "<tr>\n";
        echo 
tab3(6) . "<th colspan='3'>\n";

        
// If this is the checkout hide the cart checkout button
        
if ($isCheckout !== true) {
            if (
$config['button']['checkout']) {
                
$inputType "image";
                
$src " src='{$config['button']['checkout']}' alt='{$config['text']['checkout']}' title='' ";
            }
            echo 
tab3(7) . "<input type='$inputType' $src id='jcart-checkout' name='jcartCheckout' class='jcart-button' value='{$config['text']['checkout']}' />\n";
        }

        echo 
tab3(7) . "<span id='jcart-subtotal'>{$config['text']['subtotal']}: <strong>$" number_format($this->subtotal$priceFormat['decimals'], $priceFormat['dec_point'], $priceFormat['thousands_sep']) . "</strong></span>\n";
        echo 
tab3(6) . "</th>\n";
        echo 
tab3(5) . "</tr>\n";
        echo 
tab3(4) . "</tfoot>\n";            
        
        echo 
tab3(4) . "<tbody>\n";

        
// If any items in the cart
        
if($this->itemCount 0) {

            
// Display line items
            
foreach($this->get_contents() as $item)    {
                echo 
tab3(5) . "<tr>\n";
                echo 
tab3(6) . "<td class='jcart-item-price'>\n";
                echo 
tab3(7) . "{$item['qty']}\n";
                echo 
tab3(6) . "</td>\n";
                echo 
tab3(6) . "<td class='jcart-item-name'>\n";

                echo 
tab3(7) . $item['name'] . "\n";

                echo 
tab3(6) . "</td>\n";
                echo 
tab3(6) . "<td class='jcart-item-price'>\n";
                echo 
tab3(7) . "<span>$" number_format($item['subtotal'], $priceFormat['decimals'], $priceFormat['dec_point'], $priceFormat['thousands_sep']) . "</span>\n";
                echo 
tab3(6) . "</td>\n";
                echo 
tab3(5) . "</tr>\n";
            }
        }

        echo 
tab3(4) . "</tbody>\n";
        echo 
tab3(3) . "</table>\n\n";        
        echo 
tab3(1) . "</form>\n\n";
        echo 
tab3(1) . "<div id='jcart-tooltip'></div>\n";
    } 
Lo muestra perfecto por pantalla, pero lo que no logro es almacenar todo lo que retorna ese método para enviarlo por mail y/o guardarlo en una base de datos.

No sé mucho de objetos, si alguien me pudiera orientar para ver cómo hacerlo sería de mucha ayuda.

Muchas gracias desde ya! :)