Duda sobre guardar datos en cada usuario en php

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

0 Miembros y 2 Visitantes están viendo este tema.

::: Devil :::

minus creo que estaba pensando mal ya que el problema de la subida puede estar aqui

Código (php) [Seleccionar]
<?php
                $pa
=mysql_query("SELECT * FROM producto where estado='s'");
                while(
$row=mysql_fetch_array($pa)){
            
?>
                       
        <table class="table table-bordered">
            <tr><td>
                <div class="row-fluid">
                    <div class="span4">
                            <center><strong><?php echo $row['nombre']; ?></strong></center><br>
                            <img src="img/producto/<?php echo $row['codigo']; ?>.jpg" class="img-polaroid">
                        </div>
                        <div class="span4"><br><br><br><br>
                            <strong><?php echo $row['nota']; ?></strong><br><br>
                            <strong>Valor: </strong>$ <?php echo number_format($row['valor'],2,",","."); ?>
                        </div>
                        <div class="span4"><br><br><br><br><br>
                        <form name="form<?php $row['codigo']; ?>" method="post" action="">
                            <input type="hidden" name="codigo" value="<?php echo $row['codigo']; ?>">
                                <button type="submit" name="boton" class="btn btn-primary">
                                    <i class="icon-shopping-cart"></i> <strong>Agregar al Carrito</strong>
                                </button>
                            </form>


aqui podriamos hacer que seleccion de usuarios supongamos el campo usu y cuando le demos agregar al carrito cargue el codigo del usuario no se e pensado eso
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

MinusFour

Yo no veo ningún problema ahí, el código ni siquiera está subiendo algo a la base de datos. ¿Estás tratando de adivinar el código o algo así? No se que pensar.

Código (php) [Seleccionar]

if(!empty($_POST['codigo'])){
$codigo=$_POST['codigo'];
$pa=mysql_query("SELECT codigo, cantidad FROM carrito WHERE ced = '" . $_SESSION["ced"] . "'");
if($row=mysql_fetch_array($pa)){
$cantidad=$row['cantidad']+1;
mysql_query("UPDATE carrito SET cantidad =  '" . $new_cant . "' WHERE ced = '" . $_SESSION["ced"] . "' AND codigo =  '" . $codigo . "'");
}else{
mysql_query("INSERT INTO carrito (codigo, cantidad, ced) VALUES('" . $codigo . "', '1', '" . $_SESSION["ced"] . "'");
}
}


¿Teniamos este código, que paso exactamente con esto? Es más, mirando lo mal que esta la base de datos (varchar en practicamente todo), lo que vamos a hacer es tal cual lo que tu dices guardar el usuario tal cual en la base de datos.

Código (php) [Seleccionar]

if(!empty($_POST['codigo'])){
$codigo=$_POST['codigo'];
$pa=mysql_query("SELECT codigo, cantidad FROM carrito WHERE ced = '" . $_SESSION["username"] . "'");
if($row=mysql_fetch_array($pa)){
$cantidad=$row['cantidad']+1;
mysql_query("UPDATE carrito SET cantidad =  '" . $new_cant . "' WHERE ced = '" . $_SESSION["username"] . "' AND codigo =  '" . $codigo . "'");
}else{
mysql_query("INSERT INTO carrito (codigo, cantidad, ced) VALUES('" . $codigo . "', '1', '" . $_SESSION["username"] . "'");
}
}


Trata de entenderlo, que es lo que está haciendo este código.

::: Devil :::

no estoy tratando de adivinar creo que me explique mal te digo que cuando le damos click a agregar al carrito de compras agregue el usuario que esta pidiendolo me entiendes

en esta parte

Código (php) [Seleccionar]
<form name="form<?php $row['codigo']; ?>" method="post" action="">
                            <input type="hidden" name="codigo" value="<?php echo $row['codigo']; ?>">
                                <button type="submit" name="boton" class="btn btn-primary">
                                    <i class="icon-shopping-cart"></i> <strong>Agregar al Carrito</strong>
                                </button>


en vez de codigo agregarle usu que seria el nombre que tiene el campo en la base de datos
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

MinusFour

Es que no estas leyendo mi código. El dato USU no lo tienes porque estar sacando de la base de datos! Porque está en la misma session al loguearte!

Tu tienes en tu login:
Código (php) [Seleccionar]

$_SESSION['username']=$dato['usu'];


No necesitas pasarlo en el formulario, no necesitas sacarlo en la base de datos. Está en la session que es permanente hasta que la destruyas.

::: Devil :::

si ya me vi en el espejo :-D

si minus ya agregue este codigo

Código (php) [Seleccionar]
if(!empty($_POST['codigo'])){
$codigo=$_POST['codigo'];
$pa=mysql_query("SELECT codigo, cantidad FROM carrito WHERE ced = '" . $_SESSION["username"] . "'");
if($row=mysql_fetch_array($pa)){
$cantidad=$row['cantidad']+1;
mysql_query("UPDATE carrito SET cantidad =  '" . $new_cant . "' WHERE ced = '" . $_SESSION["username"] . "' AND codigo =  '" . $codigo . "'");
}else{
mysql_query("INSERT INTO carrito (codigo, cantidad, ced) VALUES('" . $codigo . "', '1', '" . $_SESSION["username"] . "'");
}
}


pero cuando le doy agregar al carrito  no me agrega ningun producto
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

MinusFour

Cambia:

Código (php) [Seleccionar]

mysql_query("INSERT INTO carrito (codigo, cantidad, ced) VALUES('" . $codigo . "', '1', '" . $_SESSION["username"] . "'")


por:

Código (php) [Seleccionar]

mysql_query("INSERT INTO carrito (codigo, cantidad, ced) VALUES('" . $codigo . "', '1', '" . $_SESSION["username"] . "')")


Y en tu UPDATE tienes $new_cant en lugar de $cantidad.

::: Devil :::

no agrega nada solo coloca en el campo ced el numero 0
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

::: Devil :::

#57
minus ya esta listo ya consegui que mostrara el nombre del usuario que compro :-D jajaja probando algo loco y me salio....

aora mi otra pregunta es que solo me agrega un solo producto del carrito :-( te muestro como quedo el codigo

Código (php) [Seleccionar]
<?php 
session_start();
include('php_conexion.php'); 
$act="0";
include_once("php_conexion.php");
if(!empty($_GET['del'])){
$id=$_GET['del'];
mysql_query("DELETE FROM carrito WHERE codigo='$id'");
}
   if(!$_SESSION['tipo_usu']=='a' or !$_SESSION['tipo_usu']=='ca'){
header('location:index.php');
    }
?>


<!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 Venezuela Computer</a>
         <div class="nav-collapse collapse">
           <ul class="nav">
             <li class="active"><a href="index.php">Principal</a></li>
             <li><a href="mis_pedidos.php">Mis Pedidos</a></li>
           </ul>

           </li>
           <table width="200" border="2" align="right">
             <tr>
               <td bgcolor="#FFFFFF"><a href="#" target="_blank" class="dropdown-toggle" id="drop3" role="button" data-toggle="dropdown"><i class="icon-user"></i> Hola! <?php echo $_SESSION['username']; ?> <b class="caret"></b></a>
             <ul class="dropdown-menu" role="menu" aria-labelledby="drop3">
               <li role="presentation"><a role="menuitem" tabindex="-1" href="cambiar_clave.php" target="admin"><i class="icon-refresh"></i> Cambiar Contraseña</a></li>
               <li role="presentation" class="divider"></li>
               <li role="presentation"><a role="menuitem" tabindex="-1" href="php_cerrar.php"><i class="icon-off"></i> Salir</a></li>
               </td>
             </tr>
           </table>
         </div><!--/.nav-collapse -->
         </a>
       </div>
     </div>
   </div>

   <div class="container">

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

     <!-- Example row of columns -->
     <div class="row">
     
     </div>
     <div align="center">
     
       <div class="row-fluid">
    <div class="span8">
<?php
                $pa
=mysql_query("SELECT * FROM producto where estado='s'");
                while(
$row=mysql_fetch_array($pa)){
            
?>
                     
        <table class="table table-bordered">
            <tr><td>
                <div class="row-fluid">
                    <div class="span4">
                           <center><strong><?php echo $row['nombre']; ?></strong></center><br>
                           <img src="img/producto/<?php echo $row['codigo']; ?>.jpg" class="img-polaroid">
                       </div>
                       <div class="span4"><br><br><br><br>
                           <strong><?php echo $row['nota']; ?></strong><br><br>
                           <strong>Valor: </strong>$ <?php echo number_format($row['valor'],2,",","."); ?>
                       </div>
                       <div class="span4"><br><br><br><br><br>
                        <form name="form<?php $row['codigo']; ?>" method="post" action="">
                            <input type="hidden" name="codigo" value="<?php echo $row['codigo']; ?>">
                               <button type="submit" name="boton" class="btn btn-primary">
                                   <i class="icon-shopping-cart"></i> <strong>Agregar al Carrito</strong>
                               </button>
                           </form>
                       </div>
                   </div>
            </td></tr>
        </table>
        <?php ?>
        </div>
           <div class="span4">
      <?php
if(!empty($_POST['codigo'])){
$codigo=$_POST['codigo'];
$pa=mysql_query("SELECT codigo, cantidad FROM carrito WHERE usu = '" $_SESSION["username"] . "'");
if($row=mysql_fetch_array($pa)){
$cantidad=$row['cantidad']+1;
mysql_query("UPDATE carrito SET cantidad =  '" $cantidad "' WHERE usu = '" $_SESSION["username"] . "' AND codigo =  '" $codigo "'");
}else{
mysql_query("INSERT INTO carrito (codigo, cantidad, usu) VALUES('" $codigo "', '1', '" $_SESSION["username"] . "')");
}
}
?>

              <div id="sidebar"><br><br><br>
              <h2 align="center">Mis Pedidos</h2>
              <table class="table table-bordered">
                     <tr>
                       <td height="153">
                        <table class="table table-bordered table table-hover">
                           <?php 
$neto=0;$tneto=0;
$pa=mysql_query("SELECT * FROM carrito");
while($row=mysql_fetch_array($pa)){
$oProducto=new Consultar_Producto($row['codigo']);
$neto=$oProducto->consultar('valor')*$row['cantidad'];
$tneto=$tneto+$neto;

?>

                             <tr style="font-size:9px">
                               <td><?php echo $oProducto->consultar('nombre'); ?></td>
                               <td><?php echo $row['cantidad']; ?></td>
                               <td>$ <?php echo number_format($neto,2,",","."); ?></td>
                               <td>
                                <a href="index.php?del=<?php echo $row['codigo']; ?>" title="Eliminar de la Lista">
                                <i class="icon-remove"></i>
                                   </a>
                               </td>
                             </tr>
                           <?php }
?>

                            <td colspan="4" style="font-size:9px"><div align="right">$<?php echo number_format($tneto,2,",","."); ?></div></td>
                           <?php 
$pa=mysql_query("SELECT * FROM carrito");
if(!$row=mysql_fetch_array($pa)){
?>

                             <tr><div class="alert alert-success" align="center"><strong>No hay Productos Registrados</strong></div></tr>
 <?php ?>
                           </table></td>
                     </tr>
                   </table>
               </div>
           </div>
    </div>
       
     </div>

     <hr>

     <footer>
       <p>&copy; Venezuela Computer 2014</p>
       <p>&nbsp;</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>


que hice en vez de hacerlo con el campo ced como me habias comentado lo hice con el campo usu :-D y solo agregue una linea en la base de datos carrito que diga usu

lo que cambie fue esta parte como te podras dar cuenta

Código (php) [Seleccionar]
<?php
if(!empty($_POST['codigo'])){
$codigo=$_POST['codigo'];
$pa=mysql_query("SELECT codigo, cantidad FROM carrito WHERE usu = '" $_SESSION["username"] . "'");
if($row=mysql_fetch_array($pa)){
$cantidad=$row['cantidad']+1;
mysql_query("UPDATE carrito SET cantidad =  '" $cantidad "' WHERE usu = '" $_SESSION["username"] . "' AND codigo =  '" $codigo "'");
}else{
mysql_query("INSERT INTO carrito (codigo, cantidad, usu) VALUES('" $codigo "', '1', '" $_SESSION["username"] . "')");
}
}
?>


solo me agrega al que yo le de agregar carrito primero

si le doy a producto 1, cuando le quiero dar a producto 2 no me lo agarra solo me permite seguir agregando a producto 1
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA

MinusFour

A menos que tu campo ced no haya sido varchar(255) como el resto de tus campos... no te debio haber dado ningún problema. Lo acaba de probar tal cual en mi server y funciona bien.

Lo único que no funciona es como tu dices, que no puedes agregar diferentes productos una vez que hayas insertado uno, porque tu query para revisar está mal.

Código (php) [Seleccionar]
mysql_query("SELECT codigo, cantidad FROM carrito WHERE usu = '" . $_SESSION["username"] . "' AND codigo = '". $codigo . "'");

::: Devil :::

#59
esta mal el query pero en donde porque todo lo deje igual

sigue dando el mismo error con el query que me pasastes

es decir puedo darle varias veces y el producto lo agrega pero no seguido hay que darle 10 veces click para que lo agregue y para agregar el otro se pone dificil tambien
NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA