Foros del Web » Programando para Internet » PHP »

utilizar un valor que varia cada vez en masde una

Estas en el tema de utilizar un valor que varia cada vez en masde una en el foro de PHP en Foros del Web. hago una select de categoria y me devuelve 22 categorias seleciono una categoria a la azar hago una select entre categoria y producto y me ...
  #1 (permalink)  
Antiguo 05/12/2011, 05:40
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 2 meses
Puntos: 1
utilizar un valor que varia cada vez en masde una

hago una select de categoria y me devuelve 22 categorias
seleciono una categoria a la azar

hago una select entre categoria y producto y me devuelve 8 productos relacionados con esta categoria

ahora haría un update el problema es que necesitaría otra vez el numero 8 como podría conservar este valor porque sino nunca me hará los diferentes updates
--------------------------------------------------

devuelvo las 22 categorias

if(isset($_GET['seleccionar_categoria']){
aquí hago una select
$contar_numero_filas_categoria_productos_select = mysqli_num_rows($result_categoria_productos_select );
y devuelvo los 8 productos
}
if(isset($_GET['actualizar_precios']){
aquí necesitara el numero 8 otra vez para poder entrar en un bucle for y hacer varios updates
for( $precio_categoria_productos_updates = 0; $precio_categoria_productos_updates < $contar_numero_filas_categoria_productos_select;
$precio_categoria_productos_updates++ )
{
}


de alguna forma tendría que enviar este valor por get o por post o hidden, o tendría que utilizar mysql_data_seek para poner el apuntador del array en la primera posición y me devuelva otra vez el 8, como tengo que hacerlo ayuda, y tambien voy a necesitar la misma categoria que me de vuelve la primera vez para hacer otro select en ese caso la misma que la segunda para poder ver los productos modificados

Última edición por albertrc; 05/12/2011 a las 06:24
  #2 (permalink)  
Antiguo 05/12/2011, 07:05
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: utilizar un valor que varia cada vez en masde una

y bueno cuando cargas los productos creas un campo oculto y guardas la cantidad

Código php:
Ver original
  1. <input type="hidden" value="<?php echo $contar_numero_filas_categoria_productos_select; ?>" name="total_productos_por_categoria" />
  #3 (permalink)  
Antiguo 05/12/2011, 08:30
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 2 meses
Puntos: 1
Respuesta: utilizar un valor que varia cada vez en masde una

muchas gracias

a parte de hacerlo por hidden se podría hacer de alguna otra forma solo por curiosidad, para coger mas conceptos por sessiones puede ser?

una vez he hecho los updates vuelvo hacer una select para ver los productos modificados mi pregunta es, esta select es igual que la segunda que comento mas arriba

if(isset($_GET['seleccionar_categoria']){
aquí hago una select
$contar_numero_filas_categoria_productos_select = mysqli_num_rows($result_categoria_productos_select );
y devuelvo los 8 productos
}

todos esta hecho sin funciones mas adelante seria mejor hacerlo con funcionas y programacion orientada a objetos de momento lo hago por procedimientos

podría hacer esta select sin el botón así no podría volver a actualizar los productos pero podría ver los cambios realizados, para poder actualizar tendría que seleccionar su categoría correspondiente otra vez de las 22
se podría hacer con botón y actualizar los productos otra vez pero sin posibilitad de ver los cambios hechos, para poder ver los cambios hechos tendría que seleccionar su categoría correspondiente otra vez de las 22
o se podría ir actualizando hasta que no cambiara de categoría

creo que la ultima es la mejor la pregunta es como puedo hacerlo

Última edición por albertrc; 05/12/2011 a las 09:18
  #4 (permalink)  
Antiguo 05/12/2011, 12:33
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: utilizar un valor que varia cada vez en masde una

estas loco y confundido amigo, escribinos muy simple lo que queres hacer y mostranos el formulario
  #5 (permalink)  
Antiguo 05/12/2011, 15:14
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 15 años, 2 meses
Puntos: 1
Respuesta: utilizar un valor que varia cada vez en masde una

estaría en este link lo digo para no duplicar contenido

http://www.forosdelweb.com/f18/utili...elects-956912/
Código HTML:
Ver original
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2.     <html>
  3.         <head>
  4.             <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5.             <title></title>
  6.         </head>
  7.         <body>    
  8.       <?php
  9.       $hostname="***********";
  10.       $user="*********";
  11.       $password="*********";
  12.       $database="*********";
  13.       $link = mysqli_connect($hostname,$user,$password,$database);
  14.      
  15.       mysqli_query ($link,'SET NAMES "utf8" ');
  16.       $query_categorias_select =
  17.       "SELECT *
  18.       FROM categorias";
  19.       $result_categorias_select = mysqli_query($link,$query_categorias_select);
  20.      
  21.       $contar_numero_categorias_select = mysqli_num_rows($result_categorias_select);
  22.      ?>
  23.      
  24.         <form action="precio_final.php" method="get">
  25.             <h1>Precios (Mirar o Actualitzar)</h1>
  26.             <label for="categorias">Categorias</label><br/>
  27.             <select id="categorias" name="categorias" size="<?php echo $contar_numero_categorias_select?>" multiple="multiple">
  28.             <?php
  29.                while($row_categorias_select = mysqli_fetch_array($result_categorias_select, MYSQLI_ASSOC))
  30.                {
  31.            ?>
  32.                 <option value="<?php echo  $row_categorias_select['nombre_categoria_pc']?>">
  33.                 <?php echo ucfirst($row_categorias_select['nombre_categoria_usuario']) ?> </option>      
  34.             <?php
  35.                }
  36.            ?>
  37.              </select>
  38.              <br/>
  39.              <br/>
  40.             <input type="submit" name="seleccionar_categoria" value="Selecciona Categoria"/>
  41.         </form>
  42.      
  43.       <?php
  44.    
  45.        /**************************************/
  46.        if (isset($_GET['seleccionar_categoria']))
  47.        {
  48.        $categorias = $_GET['categorias'];
  49.    
  50.      
  51.        $hostname="*********";
  52.        $user="********";
  53.        $password="********";
  54.        $database="**********";
  55.        $link = mysqli_connect($hostname,$user,$password,$database);
  56.      
  57.        mysqli_query ($link,'SET NAMES "utf8" ');
  58.        $query_categoria_productos_select ="
  59.        SELECT
  60.        categorias.nombre_categoria_usuario,
  61.        productos.nombre_producto_pc,
  62.        productos.nombre_producto_usuario,
  63.        productos.ruta_foto_pequeña,
  64.        productos.precio_producto_kg
  65.        FROM productos INNER JOIN categorias
  66.        ON productos.categorias_nombre_categoria_pc = categorias.nombre_categoria_pc
  67.        WHERE categorias.nombre_categoria_pc = \"" .  $categorias . "\";";
  68.        $result_categoria_productos_select = mysqli_query($link,$query_categoria_productos_select);
  69.    
  70.        $contar_numero_filas_categoria_productos_select = mysqli_num_rows($result_categoria_productos_select);
  71.        ?>
  72.         <form action="precio_final.php" method="get">
  73.             <table>
  74.         <?php
  75.            $contador_categoria = 0;
  76.            while($row_categoria_productos_select = mysqli_fetch_array($result_categoria_productos_select, MYSQLI_ASSOC))
  77.            {
  78.        ?>
  79.             <?php
  80.                if($contador_categoria == 0)
  81.                {
  82.            ?>
  83.                 <td><h2><?php echo $row_categoria_productos_select['nombre_categoria_usuario']?></h2></td>
  84.             <?php
  85.                }
  86.            ?>
  87.             <tr>  
  88.             <td><?php echo $row_categoria_productos_select['nombre_producto_usuario']?></td>
  89.             <td><?php echo $row_categoria_productos_select['ruta_foto_pequeña']?></td>
  90.             <td><input type="hidden" name="nombre_producto_pc[]"  
  91.            value="<?php echo $row_categoria_productos_select['nombre_producto_pc']?>"></td><br/></br/>
  92.             <td><input type="text" name="precio_producto_kg[]" size="5" maxlength="5"
  93.            value="<?php echo number_format($row_categoria_productos_select['precio_producto_kg'], 2, ',','.')?>"> </td>
  94.             </tr>      
  95.             <?php
  96.                $contador_categoria++;
  97.            }
  98.            ?>        
  99.             </table>
  100.             <input type="submit" name="actualitzar_precios" value="Actualitzar Precios" />  
  101.         </form>
  102.        
  103.         <?php
  104.        }
  105.        /************************************/
  106.      
  107.        if (isset($_GET['actualitzar_precios']))
  108.        {
  109.            $nombre_producto_pc = $_GET['nombre_producto_pc'];
  110.      
  111.            $precio_producto_kg = $_GET['precio_producto_kg'];
  112.    
  113.            $hostname="************";
  114.            $user="************";
  115.            $password="*********";
  116.            $database="**********";
  117.            $link = mysqli_connect($hostname,$user,$password,$database);
  118.            mysqli_query ($link,'SET NAMES "utf8" ');
  119.    
  120.            for($precios_categoria_productos_updates = 0; $precios_categoria_productos_updates < $contar_numero_filas_categoria_productos_select; $precios_categoria_productos_updates++ )
  121.            {  
  122.                $query_precios_categoria_productos_updates =
  123.                'UPDATE productos
  124.                SET precio_producto_kg=' .  number_format($precio_producto_kg[$precios_categoria_productos_updates], 2, '.',',') .
  125.                ' WHERE nombre_producto_pc=  \'' . $nombre_producto_pc[$precios_categoria_productos_updates] . '\';';
  126.                $result_precios_categoria_productos_updates = mysqli_query($link,$query_precios_categoria_productos_updates);
  127.            }  
  128.        ?>
  129.             </table>
  130.         </form>
  131.         <?php  
  132.        }


despues del for añadiria esto

todo el código que viene a continuación hace referencia al código de debajo
a parte de hacerlo por hidden se podría hacer de alguna otra forma solo por curiosidad, para coger mas conceptos por sessiones puede ser?

una vez he hecho los updates vuelvo hacer una select para ver los productos modificados mi pregunta es, esta select es igual que la segunda que comento mas arriba

if(isset($_GET['seleccionar_categoria']){
aquí hago una select
$contar_numero_filas_categoria_productos_select = mysqli_num_rows($result_categoria_productos_select );
y devuelvo los 8 productos
}

todos esta hecho sin funciones mas adelante seria mejor hacerlo con funcionas y programación orientada a objetos de momento lo hago por procedimientos

podría hacer esta select sin el botón así no podría volver a actualizar los productos pero podría ver los cambios realizados, para poder actualizar tendría que seleccionar su categoría correspondiente otra vez de las 22
se podría hacer con botón y actualizar los productos otra vez pero sin posibilitad de ver los cambios hechos, para poder ver los cambios hechos tendría que seleccionar su categoría correspondiente otra vez de las 22
o se podría ir actualizando hasta que no cambiara de categoría

creo que la ultima es la mejor la pregunta es como puedo hacerlo
Código HTML:
Ver original
  1. $categorias = $_GET['categorias'];
  2.  
  3.    
  4.     $hostname="*********";
  5.     $user="********";
  6.     $password="********";
  7.     $database="**********";
  8.     $link = mysqli_connect($hostname,$user,$password,$database);
  9.    
  10.     mysqli_query ($link,'SET NAMES "utf8" ');
  11.     $query_categoria_productos_select ="
  12.     SELECT
  13.     categorias.nombre_categoria_usuario,
  14.     productos.nombre_producto_pc,
  15.     productos.nombre_producto_usuario,
  16.     productos.ruta_foto_pequeña,
  17.     productos.precio_producto_kg
  18.     FROM productos INNER JOIN categorias
  19.     ON productos.categorias_nombre_categoria_pc = categorias.nombre_categoria_pc
  20.     WHERE categorias.nombre_categoria_pc = \"" .  $categorias . "\";";
  21.     $result_categoria_productos_select = mysqli_query($link,$query_categoria_productos_select);
  22.  
  23.     $contar_numero_filas_categoria_productos_select = mysqli_num_rows($result_categoria_productos_select);
  24.     ?>
  25.     <form action="precio_final.php" method="get">
  26.         <table>
  27.     <?php
  28.        $contador_categoria = 0;
  29.        while($row_categoria_productos_select = mysqli_fetch_array($result_categoria_productos_select, MYSQLI_ASSOC))
  30.        {
  31.    ?>
  32.         <?php
  33.            if($contador_categoria == 0)
  34.            {
  35.        ?>
  36.             <td><h2><?php echo $row_categoria_productos_select['nombre_categoria_usuario']?></h2></td>
  37.         <?php
  38.            }
  39.        ?>
  40.         <tr>  
  41.         <td><?php echo $row_categoria_productos_select['nombre_producto_usuario']?></td>
  42.         <td><?php echo $row_categoria_productos_select['ruta_foto_pequeña']?></td>
  43.         <td><input type="hidden" name="nombre_producto_pc[]"  
  44.        value="<?php echo $row_categoria_productos_select['nombre_producto_pc']?>"></td><br/></br/>
  45.         <td><input type="text" name="precio_producto_kg[]" size="5" maxlength="5"
  46.        value="<?php echo number_format($row_categoria_productos_select['precio_producto_kg'], 2, ',','.')?>"> </td>
  47.         </tr>      
  48.         <?php
  49.            $contador_categoria++;
  50.        }
  51.        ?>        
  52.         </table>
  53.         <input type="submit" name="actualitzar_precios" value="Actualitzar Precios" />  
  54.     </form>
  55.         ?>
  56.         </body>
  57.     </html>

Última edición por albertrc; 05/12/2011 a las 15:22

Etiquetas: mysql, vez
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 17:59.