Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/12/2012, 10:22
rutame
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 15 años, 8 meses
Puntos: 3
Añadir artículo en Session

Buenos días amigos, tengo un problema y no lo entiendo, estoy tratando de hacer un carro de la compra con variables de sesión y no me sale, solo mete el primer artículo y luego no añade. Les pongo el código a ver si me podeis iluminar.

Muchas gracias.
Código PHP:
<?php
include('conecta.php');

if (isset(
$_GET['id']))
$id $_GET['id'];
else 
//en caso de no estar informada, le asignamos 1.
$id 1;
 
//comprobamos si la variable action viene informada en la URL
if (isset($_GET['action']))
  
$action $_GET['action'];
else
  
$action "empty";

switch(
$action){
       case 
"add":
        if(isset(
$_SESSION['carro'][$id])){
             
$_SESSION['carro'][$id]++;
             echo 
"Añade en sesion carro uno mas";
             }
          else{
             
$_SESSION['carro'][$id]=1;
             echo 
"NO Añade en sesion carro uno mas";
             
var_dump($_SESSION['carro'][$id]);
             }
       break;
     
       case 
"remove":
          if(isset(
$_SESSION['carro'][$id])){
             
$_SESSION['carro'][$id]--;
                if(
$_SESSION['carro'][$id]==0)
                   unset(
$_SESSION['carro'][$id]);
          }
       break;
     
       case 
"removeProd":
          if(isset(
$_SESSION['carro'][$id])){
             unset(
$_SESSION['carro'][$id]);
          }
       break;
     
       case 
"empty":
          unset(
$_SESSION['carro']);
       break;
}

if(isset(
$_SESSION['carro'])){
$total 0;
?>
<table id="table_lineas">
<div class="imp"><a href="imprime_presu.php" onClick="window.open(this.href, this.target, 'width=600,height=840');return false;" target="_blank">
<img src="fondos/impresora-32.png" alt="Imprimir" title="imprimir configuración de tu PC en Informatica Vecindario"></a></div>

<a href="borra_linea.php?d=todo" class="b_todo">Borrar todo</a>

<tr><th>Descripción</th><th>PVP/U</th><th>Cantidad</th><th>Subtotal</th></tr>
    <?php

     
foreach($_SESSION['carro'] as $id => $cantidad){
     echo 
"ID es, despues del foreach: ".$id."<br />";
     
var_dump($_SESSION['carro']);
     
$sql mysql_query("SELECT * FROM componentes WHERE id_comp = '$id' ");
     
$fila mysql_fetch_array($sql);
     
//var_dump($fila);
     
$id_comp $fila['id_comp'];
     
$componente $fila['descripcion'];
     
$pvp $fila['pvp'];
     
//$subtotal = $pvp * 
     
$subtotal $pvp $cantidad;
     
//$total = $subtotal + $total;
     
    
?>
      <tr id="fila-<?php echo $id_comp;?>">
      <td class="descripcion"><?php echo $componente;?></td>
      <td><?php echo $pvp;?></td>
      <td><?php echo $cantidad;?></td>                      
      <td class="subtotal"><?php echo $subtotal." €";?></td>
      <td>

<a href="">
<img src="fondos/borrar16px.png" alt="Borrar" title="Borrar" 
name="<?php echo $id_comp;?>" class="borrar">
     </a>     
      </td>
      </tr>

     <?php     }    
     
     }  
     else{
     echo 
"Lista vacia";
     }
?>
<span>
<?php //if(!empty($total)){echo $total."€";}else{$total="0.0€";echo $total;}  ?>

</span> 
     
    </table>
Por lo visto se queda en la línea 23 (No añade en sesion carro uno mas)