Foros del Web » Programando para Internet » PHP »

Problema con variables de session

Estas en el tema de Problema con variables de session en el foro de PHP en Foros del Web. buenas muchachos, recurro otra vez a ustedes porque tengo otro error. Cuando voy a insertar $dinero (que es un subtotal), me lo inserta correctamente en ...
  #1 (permalink)  
Antiguo 30/05/2007, 16:05
 
Fecha de Ingreso: mayo-2007
Mensajes: 237
Antigüedad: 16 años, 11 meses
Puntos: 3
Problema con variables de session

buenas muchachos, recurro otra vez a ustedes porque tengo otro error.

Cuando voy a insertar $dinero (que es un subtotal), me lo inserta correctamente en lin_pedido, pero para todos los prodcutos me inserta el mismo subtotal no se porque... ¿Alguna sujerencia?

Localizador, unidades, subtotal, nombre
54 4 1437.60€ Pedido de equipos: medio
54 3 1437.60€ Estudio de redes

pagina 1
Código PHP:
<?
session_start
();
session_register("productos");
session_register("total");
session_register("cantidades");
session_register("suma");
session_register("dinero");
session_register("fecha");

$_SESSION['id'] = $id;
$_SESSION['login'] = $login;

  
$fecha gmdate ("Y-m-d");
if (
$total==null$total=0;

if (
$_POST['cantidad']>0
    {
    
$productos[$total] = $_POST['id'];
    
$cantidades[$total] = $_POST['cantidad'];
    
$total++;
    }
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Carrito de la compra.</title>
<style type="text/css">
<!--
.Estilo3 {    color: #0000FF;
    font-weight: bold;
    font-size: 14px;
    font-family: Verdana, Arial, Helvetica, sans-serif;
}
.Estilo5 {
    color: #000000;
    font-size: 18px;
}
body {
    background-image: url(../../comp/fondo5.gif);
}
.Estilo6 {font-size: 17px}
.Estilo7 {color: #000000}
.Estilo8 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 14px;
    font-weight: bold;
}
-->
</style>
</head>

<body>
<p align="center" class="Estilo3 Estilo5">CARRITO DE LA COMPRA</p>
<p class="Estilo6">
  <!--DWLayoutTable-->
  <?
   
if ($total == 0
       {
?> 
       <br>
       <br>
       <span class="Estilo7"><font size="+1">El carrito está vacío.</font></span>
       <?  
   else
      {
      
?>
</p>
<table width="600" border="1" align="center">
      <tr>
          <td width="84" bgcolor="#FFC4C4">    <div align="center" class="Estilo7"><span class="Estilo8">CANTIDAD</span></div></td>
        <td width="320" bgcolor="#FFC4C4"><div align="center" class="Estilo7"><span class="Estilo8">NOMBRE DEL PRODUCTO</span></a></div></td>
        <td width="97" bgcolor="#FFC4C4">    <div align="center" class="Estilo7"><span class="Estilo8">PRECIO UNITARIO</span></div></td>
        <td width="71" bgcolor="#FFC4C4">    <div align="center" class="Estilo7"><span class="Estilo8">PRECIO TOTAL</span></div></td>
      </tr>
      <?
      
//CONECTAMOS CON LA BASE DE DATOS              
      
$bd "servtein";
      
$tabla "sub_servicios";
        
      
$c mysql_connect("localhost""root");
        
mysql_select_db($bd$c);
      
    
      
$suma 0;        
      for (
$i=0$i<$total$i++)
          {
          
$sentencia "SELECT * FROM $tabla WHERE id_sub = $productos[$i]";
          
$resultado mysql_query($sentencia,$c);
          
$registro mysql_fetch_row($resultado);
          
$dinero $registro[3]*$cantidades[$i];
          
$suma $suma $dinero;
           
?>
          <tr>
            <td width="84" bgcolor="#FFFFCC"><div align="center" class="Estilo7"><span class="Estilo8"><? echo $cantidades[$i];?></span></div></td>
            <td width="320" bgcolor="#FFFFCC"><div align="center" class="Estilo7"><span class="Estilo8"><? echo $registro[1];?></span></div></td>
            <td width="97" bgcolor="#FFFFCC"><div align="center" class="Estilo7"><span class="Estilo8"><? echo $registro[3];?> &euro; </span></div></td>
            <td width="71" bgcolor="#FFFFCC"><div align="center" class="Estilo7"><span class="Estilo8"><? echo $dinero;?> &euro; </span></div></td>
          </tr>
          <?
          

          
?>         
</table>
       <br>
       <table border=1 align="center">
          <tr>
            <td width="100" bgcolor="#FFC4C4"><div align="center" class="Estilo7"><span class="Estilo8">TOTAL COMPRAS </span></div></td>
            <td width="100" bgcolor="#FFFFCC"><div align="center" class="Estilo7"><span class="Estilo8"><? echo $suma;?> &euro; </span></div></td>
          </tr>
       </table>
       <?
       
}
       
?>

       <p align="center"><a href="servicios.php">Seguir comprando</a> <a href="contratar3.php">Terminar compra </a></p>
       <p align="center"><a href="pagar.php"></a></p>
</body>
</html>
página 2
Código PHP:
<?
session_start
();
session_register("productos");
session_register("total");
session_register("cantidades");
session_register("suma");
session_register("dinero");
session_register("fecha");

echo 
$dinero;

$_SESSION['id'] = $id;
$_SESSION['login'] = $login;


if (
$total==null$total=0;

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Carrito de la compra.</title>
<style type="text/css">
<!--
.Estilo3 {    color: #0000FF;
    font-weight: bold;
    font-size: 14px;
    font-family: Verdana, Arial, Helvetica, sans-serif;
}
.Estilo5 {
    color: #FF0000;
    font-size: 18px;
}
.Estilo6 {color: #000000}
body {
    background-image: url(../../comp/fondo5.gif);
}
.Estilo7 {
    color: #000000;
    font-size: 17px;
    font-weight: bold;
}
-->
</style>
</head>

<body>
<p align="center" class="Estilo3 Estilo5 Estilo6">CARRITO DE LA COMPRA</p>
<p align="left" class="Estilo7">Vd. ha finalizado la compra con &eacute;xito, si ha realizado la compra antes de las 20:00, un t&eacute;cnico se pondr&aacute; en contacto con Vd. para determinar la cita y ver la viabilidad de su pedido, as&iacute; como los pagos de este </p>
<!--DWLayoutTable-->
  <?
   
if ($total == 0
       {
?> 
       <br><br>
       <font size="+1"><span class="Estilo6">El carrito está vacío, no se puede realizar la compra</span></font><font color="#0000FF" size="+1">.</font>
       <?  
   else
      {
     
      
      
$bd "servtein";
              
      
$c mysql_connect("localhost""root");
        
mysql_select_db($bd$c);
      
        
$sentencia "INSERT INTO pedido (precio_total, fecha, id_clie) VALUES ('$suma', '$fecha', '$id')";
      
$resultado mysql_query($sentencia$c);
      echo 
$sentencia;
      
$id_pedido mysql_insert_id(); 
  
      for (
$i=0$i<$total$i++)
          {
          
$sentencia "INSERT INTO lin_pedido (cantidad, subtotal, id_pedido, id_sub) VALUES ('$cantidades[$i]', '$dinero', '$id_pedido', '$productos[$i]')";
          
$resultado mysql_query($sentencia$c);
           } 
          echo 
$sentencia;
         }
          
?>         

       <p align="center"><a href="productos.php"></a></p>
       <p align="center"><a href="pagar.php"></a></p>
</body>
</html>
<?
session_unregister
("productos");
session_unregister("total");
session_unregister("cantidades");
session_unregister("suma");
session_unregister("dinero");
session_unregister("fecha");
?>
  #2 (permalink)  
Antiguo 31/05/2007, 04:19
 
Fecha de Ingreso: mayo-2007
Mensajes: 237
Antigüedad: 16 años, 11 meses
Puntos: 3
Re: Problema con variables de session

a nadie se le ocurre nada? :(
  #3 (permalink)  
Antiguo 31/05/2007, 06:12
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Problema con variables de session

Si para cada pedido tienes un subtotal, ¿porque no es un array como lo es cantidades o productos?
  #4 (permalink)  
Antiguo 31/05/2007, 13:21
 
Fecha de Ingreso: mayo-2007
Mensajes: 237
Antigüedad: 16 años, 11 meses
Puntos: 3
Re: Problema con variables de session

Cita:
Iniciado por jerkan Ver Mensaje
Si para cada pedido tienes un subtotal, ¿porque no es un array como lo es cantidades o productos?
Pués teniendo en cuaenta que lo he copiado de un ejemplo de internet, como no seas más específico :)
  #5 (permalink)  
Antiguo 01/06/2007, 07:21
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 18 años, 7 meses
Puntos: 19
Re: Problema con variables de session

Pero, ¿entiendes lo que has copiado?
  #6 (permalink)  
Antiguo 01/06/2007, 08:51
 
Fecha de Ingreso: mayo-2007
Mensajes: 237
Antigüedad: 16 años, 11 meses
Puntos: 3
Re: Problema con variables de session

claro :) los arrays recogen cada uno de los resultados que van dando las sesiones... pero si pongo $dinero($i) como los demás en el array, no me devuelve resultado no se porque
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:05.