Foros del Web » Programando para Internet » PHP »

Añadir artículo en Session

Estas en el tema de Añadir artículo en Session en el foro de PHP en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 19/12/2012, 10:22
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 16 años, 3 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)
  #2 (permalink)  
Antiguo 19/12/2012, 12:27
Avatar de DeivisAndres  
Fecha de Ingreso: febrero-2012
Ubicación: Colombia
Mensajes: 305
Antigüedad: 12 años, 9 meses
Puntos: 41
Respuesta: Añadir artículo en Session

No veo por ningún lado el session_start(); donde estas Iniciando la sesión ?
  #3 (permalink)  
Antiguo 20/12/2012, 08:18
 
Fecha de Ingreso: agosto-2008
Ubicación: Canarias, España - París, Francia
Mensajes: 105
Antigüedad: 16 años, 3 meses
Puntos: 3
Respuesta: Añadir artículo en Session

Hola la inicio en otro script, este está incluido en él.

Tengo otro problema, estoy enviado un session_id() y me está enviando otro indentificador...
  #4 (permalink)  
Antiguo 20/12/2012, 09:32
 
Fecha de Ingreso: octubre-2008
Mensajes: 365
Antigüedad: 16 años, 1 mes
Puntos: 12
Respuesta: Añadir artículo en Session

Código PHP:
session_start(); 
tiene que estar en cáda una de las páginas donde usarás variables de sesion.

Salu2
__________________
No hay mail que por internet no venga

Etiquetas: session, carritodecompras
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 14:08.