Duda sobre guardar datos en cada usuario en php

Iniciado por ::: Devil :::, 8 Julio 2014, 20:23 PM

0 Miembros y 1 Visitante están viendo este tema.

::: Devil :::

hola soy yo de nuevo disculpen la molestia.

siguien con el tema del carrito de compra tengo mi carro de compra creado como lo comente en otro post ya consegui como mostrar el nombre del que inicio la sesion

aora bien quiero saber como guardar los datos en cada usuario que inicie sesion, con esto no estoy diciendo que lo quiero hecho solo quiero que me den una ayuda ya que los comentarios negativos no ayudan en nada

este es mi php de los pedidos la cual es mis_pedidos.php

Código (php) [Seleccionar]
<?php 
include_once(
"php_conexion.php");
if(!empty($_GET['del'])){
$id=$_GET['del'];
mysql_query("DELETE FROM carrito WHERE codigo='$id'");
header('location:mis_pedidos.php');
}
//-------------------------------------------------------------------
?>

Código (html4strict) [Seleccionar]

<!DOCTYPE html>
<html lang="es">
 <head>
   <meta charset="utf-8">
   <title>Carrito de Compras</title>
   <meta name="viewport" content="width=device-width, initial-scale=1.0">
   <meta name="description" content="">
   <meta name="author" content="">

   <!-- Le styles -->
   <link href="css/bootstrap.css" rel="stylesheet">
   <style type="text/css">
     body {
       padding-top: 60px;
       padding-bottom: 40px;
     }
   </style>
   <link href="css/bootstrap-responsive.css" rel="stylesheet">

   <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
   <!--[if lt IE 9]>
     <script src="../assets/js/html5shiv.js"></script>
   <![endif]-->

   <!-- Fav and touch icons -->
   
   <link rel="apple-touch-icon-precomposed" sizes="144x144" href="ico/apple-touch-icon-144-precomposed.png">
   <link rel="apple-touch-icon-precomposed" sizes="114x114" href="ico/apple-touch-icon-114-precomposed.png">
     <link rel="apple-touch-icon-precomposed" sizes="72x72" href="ico/apple-touch-icon-72-precomposed.png">
                   <link rel="apple-touch-icon-precomposed" href="ico/apple-touch-icon-57-precomposed.png">
                                  <link rel="shortcut icon" href="ico/favicon.png">
 </head>

 <body>

   <div class="navbar navbar-inverse navbar-fixed-top">
     <div class="navbar-inner">
       <div class="container">
         <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
           <span class="icon-bar"></span>
           <span class="icon-bar"></span>
           <span class="icon-bar"></span>
         </button>
         <a class="brand" href="#">Tienda SoftUnicorn</a>
         <div class="nav-collapse collapse">
           <ul class="nav">
             <li><a href="index.php">Principal</a></li>
             <li class="active"><a href="mis_pedidos.php">Mis Pedidos</a></li>
           </ul>
         </div><!--/.nav-collapse -->
       </div>
     </div>
   </div>

   <div class="container">

     <!-- Main hero unit for a primary marketing message or call to action -->
     <div class="hero-unit" align="center">
        <img src="file:///C|/Users/Secretaria/Desktop/Nueva carpeta/images/slogan-bg.jpg" class="img-polaroid">
     </div>

     <!-- Example row of columns -->
     <div class="row">
     
     </div>
     <div align="center">
      <?php 
if(!empty($_POST['n_cant'])){
$n_cant=$_POST['n_cant'];
$n_codigo=$_POST['codigo'];
$oProducto=new Consultar_Producto($n_codigo);
mysql_query("UPDATE carrito SET cantidad='$n_cant' WHERE codigo='$n_codigo'");

echo '<div class="alert alert-success" align="center">
  <button type="button" class="close" data-dismiss="alert">×</button>
  <strong>Cantidad del Producto "'
.$oProducto->consultar('nombre').'" Actualizada con Exito</strong>
</div>'
;
}
?>

      <table class="table table-bordered">
         <tr class="info">
           <td><strong class="text-info">Articulo</strong></td>
           <td><div align="right"><strong class="text-info">Valor Unitario</strong></div></td>
           <td><center><strong class="text-info">Cantidad</strong></center></td>
           <td><div align="right"><strong class="text-info">Total</strong></div></td>
           <td></td>
         </tr>
         <?php 
   $total=0;$neto=0;
   $pa=mysql_query("SELECT * FROM carrito");
            while(
$row=mysql_fetch_array($pa)){
$oProducto=new Consultar_Producto($row['codigo']);
$total=$row['cantidad']*$oProducto->consultar('valor');#cantidad * valor unitario
$neto=$neto+$total;#acumulamos el neto
  ?>

         <tr>
           <td>
            <div align="center">
                    <strong><?php echo $oProducto->consultar('nombre'); ?></strong><br>
                    <img src="img/producto/<?php echo $row['codigo']; ?>.jpg" width="200" height="200" class="img-polaroid">
               </div>
           </td>
           <td><br><br><div align="right">$ <?php echo number_format($oProducto->consultar('valor'),2,",","."); ?></div></td>
           <td><br><br>
            <center>
                <a href="#cant<?php echo $row['codigo']; ?>" role="button" class="btn" data-toggle="modal" title="Editar Cantidad">
<span class="badge badge-success"><?php echo $row['cantidad']; ?></span>
                   </a>
               </center>
           </td>
           <td><br><br><div align="right">$ <?php echo number_format($total,2,",","."); ?></div></td>
           <td><br><br>
           <center>
            <a href="mis_pedidos.php?del=<?php echo $row['codigo']; ?>" class="btn btn-mini" title="Eliminar de la Lista">
                <i class="icon-remove"></i>
               </a>
               </center>
           </td>
         </tr>
         
       <div id="cant<?php echo $row['codigo']; ?>" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
      <form name="form<?php $row['codigo']; ?>" method="post" action="">
          <input type="hidden" name="codigo" value="<?php echo $row['codigo']; ?>">
           <div class="modal-header">
           <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
           <h3 id="myModalLabel">Actualizar Existencia</h3>
           </div>
           <div class="modal-body">
             <div class="row-fluid">
               <div class="span6">
                    <img src="img/producto/<?php echo $row['codigo']; ?>.jpg" width="200" height="200" class="img-polaroid">
                   </div>
               <div class="span6">
                    <strong><?php echo $oProducto->consultar('nombre'); ?></strong><br>
               <strong>Cantidad Actual: </strong><?php echo $row['cantidad']; ?><br><br>
                       <strong>Nueva Cantidad</strong><br>
                       <input name="n_cant" value="<?php echo $row['cantidad']; ?>" type="number" autocomplete="off" min="1">
                   </div>
               </div>
           </div>
           <div class="modal-footer">
           <button class="btn" data-dismiss="modal" aria-hidden="true"><i class="icon-remove"></i> <strong>Cerrar</strong></button>
            <button type="submit" class="btn btn-primary"><i class="icon-ok"></i> <strong>Actualizar</strong></button>
           </div>
           </form>
       </div>
         
         <?php ?>
         <tr class="info">
           <td>&nbsp;</td>
           <td>&nbsp;</td>
           <td><div align="right"><strong>NETO A PAGAR</strong></div></td>
           <td><div align="right"><strong>$ <?php echo number_format($neto,2,",","."); ?></strong></div></td>
           <td>&nbsp;</td>
         </tr>
       </table>
      <p>
<form method="POST" action="registra.php">  
   
   <p>&nbsp;</p>  
     
</form>
       
     </div>

     <hr>

     <footer>
       <p>&copy; Venezuela Computer 2014</p>
     </footer>

   </div> <!-- /container -->

   <!-- Le javascript
   ================================================== -->
   <!-- Placed at the end of the document so the pages load faster -->
   <script src="js/jquery.js"></script>
   <script src="js/bootstrap-transition.js"></script>
   <script src="js/bootstrap-alert.js"></script>
   <script src="js/bootstrap-modal.js"></script>
   <script src="js/bootstrap-dropdown.js"></script>
   <script src="js/bootstrap-scrollspy.js"></script>
   <script src="js/bootstrap-tab.js"></script>
   <script src="js/bootstrap-tooltip.js"></script>
   <script src="js/bootstrap-popover.js"></script>
   <script src="js/bootstrap-button.js"></script>
   <script src="js/bootstrap-collapse.js"></script>
   <script src="js/bootstrap-carousel.js"></script>
   <script src="js/bootstrap-typeahead.js"></script>
   <script>
$(function() {
           var offset = $("#sidebar").offset();
           var topPadding = 15;
           $(window).scroll(function() {
               if ($("#sidebar").height() < $(window).height() && $(window).scrollTop() > offset.top) { /* LINEA MODIFICADA POR ALEX PARA NO ANIMAR SI EL SIDEBAR ES MAYOR AL TAMAÑO DE PANTALLA */
                   $("#sidebar").stop().animate({
                       marginTop: $(window).scrollTop() - offset.top + topPadding
                   });
               } else {
                   $("#sidebar").stop().animate({
                       marginTop: 0
                   });
               };
           });
       });
</script>

 </body>
</html>


--------------------------------------------------------------------------------------------
aora bien esta parte seria la que tendria que modificar para que cuando el if sea algo como que si inicia session x usuario se cargue lo del carrito de compra en esa parte, espero me entiendan ya que no hayo como hacer esa parte

Código (php) [Seleccionar]
<?php 
if(!empty($_POST['n_cant'])){
$n_cant=$_POST['n_cant'];
$n_codigo=$_POST['codigo'];
$oProducto=new Consultar_Producto($n_codigo);
mysql_query("UPDATE carrito SET cantidad='$n_cant' WHERE codigo='$n_codigo'");

echo '<div class="alert alert-success" align="center">
  <button type="button" class="close" data-dismiss="alert">×</button>
  <strong>Cantidad del Producto "'
.$oProducto->consultar('nombre').'" Actualizada con Exito</strong>
</div>'
;
}
?>



MOD: Obligatorio el uso de etiquetas GeSHi.
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

engel lex

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

::: Devil :::

no amigo lo tengo solo para mostrar el nombre del usuario esto es para guardar los datos en cada usuario
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

MinusFour

¿Y que es exactamente lo que quieres guardar del usuario? ¿Su carro de compras?

engel lex

por cierto... la ultima pasada por aqui... aunque nadie te lo ha dicho y los usuarios con tiempo deberían, cuando publiques código, para que sea legible usa las etiquetas GeSHi que están arriba de los emoticones a la derecha, puedes modificar el tema original, seleccionar el codigo y colocarle las etiquetas para que se pongan de una vez al principio y final de tu codigo :P
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.

::: Devil :::

#5
si ese seria el punto de que cuando un usuario x entre en su carrito de compras y pide x cantidad de productos se los guarde solo a ese usuario ya tengo todo creado carrito de compras y todo lo demas solo me falta es esa parte de que a cada usuario se le cargue su carrito de compra y se le guarde lo que pida
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

::: Devil :::

no estoy diestro y no se si se pueda hacer de esta forma pero sera que se puede hacer en UPDATE carrito se podria cargar en supongamos UPDATE $session algo asi

<?php
         if(!empty($_POST['n_cant'])){
            $n_cant=$_POST['n_cant'];
            $n_codigo=$_POST['codigo'];
            $oProducto=new Consultar_Producto($n_codigo);
            mysql_query("UPDATE carrito SET cantidad='$n_cant' WHERE codigo='$n_codigo'");
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

MinusFour

Necesitas un campo para guardar la ID del carro al que pertenece al registro y hacer match con el usuario al que pertenece esa id del carro.

ID del carroCantidadCodigo
0000110000002

ID del carroUsuario
00001Fulanito

Aunque bueno, yo no se como tengas tus tablas de SQL, yo estoy infiriendo mucho aquí.

::: Devil :::

#8
esta es la base de datos carrito donde se guarda todo lo que se pide en el carrito de compras


Código (php) [Seleccionar]
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- Base de datos: `carrito`
--

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `carrito`
--

CREATE TABLE IF NOT EXISTS `carrito` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `codigo` varchar(255) NOT NULL,
 `cantidad` varchar(255) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=27 ;

--
-- Volcado de datos para la tabla `carrito`
--

INSERT INTO `carrito` (`id`, `codigo`, `cantidad`) VALUES
(24, '100', '2'),
(25, '101', '2'),
(26, '103', '1');

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `producto`
--

CREATE TABLE IF NOT EXISTS `producto` (
 `id` int(11) NOT NULL AUTO_INCREMENT,
 `codigo` varchar(255) NOT NULL,
 `nombre` varchar(255) NOT NULL,
 `nota` varchar(255) NOT NULL,
 `valor` varchar(255) NOT NULL,
 `estado` varchar(255) NOT NULL,
 PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

--
-- Volcado de datos para la tabla `producto`
--

INSERT INTO `producto` (`id`, `codigo`, `nombre`, `nota`, `valor`, `estado`) VALUES
(1, '100', 'COMPUTADOR DELL', 'Computador de Marca DELL, Disco Duro de 300 GB y memoria DRR2 3GB', '1200000', 's'),
(2, '101', 'COMPUTADOR SAMSUNG', 'Computador de Marca SANSUNG de 10.4 Pulgadas de Colores Negro, Gris y Personalizados en la tapa', '900000', 's'),
(3, '102', 'COMPUTADOR HP', 'Computador de Mesa de marca HP, monitor de 14 Pulgadas, con Teclado, Cursor, Mesa y Silla ', '990000', 's'),
(4, '103', 'COMPUTADOR VAIO', 'Computador de Marca VAIO, de 13 Pulgada', '1000000', 's');

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

MinusFour

Necesitas poner tu código entre las etiquetas [ code]:


¿También tienes una tabla de usuarios en SQL no?

Yo creo que necesitas agregar un campo a tu tabla de carrito para apuntar a un carrito en especifico y una tabla nueva donde guardes los diferentes carros y a que usuario pertenecio el carrito de compras.

Pero no se si puedan normalizar las tablas con lo que yo propongo, es decir quizás alla una forma mejor de poner tus tablas.