no funciona el update
 
el problema esta en la linea 120 en el for no le llega el numero a la variable  $contar_numero_filas_categoria_productos_select 
en el bucle for no le llega el contador, he puesto un 8 y he probado una categoría que tenia 8 productos y me ha funcionado, como puedo hacer para que al contador le llegue el numero en función de su categoría y producto
se tendría que enviar por get o post o hidden 
de alguna forma tendría que conservar la categoría y así podría tener la categoría y saber cuantos productos hay entre la categoría y productos hasta que no cambiara de categoría no perder este valor, ademas después de hacer un update o mas de uno volvería a necesitar la categoría para hacer un select para saber que productos se han actualizado 
en definitiva que hasta que no vuelva a pulsar sel boton submit del primer formulario no perder el valor de la categoria, este como puedo hacerlo     
Código PHP:
Ver original<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title></title>
    </head>
    <body>      
  <?php
   $hostname="***********";
   $user="*********";
   $password="*********";
   $database="*********";
   
   $query_categorias_select = 
   "SELECT * 
    FROM categorias";
   $result_categorias_select = mysqli_query($link,$query_categorias_select);    
   $contar_numero_categorias_select = mysqli_num_rows($result_categorias_select);   ?>
 
    <form action="precio_final.php" method="get">
        <h1>Precios (Mirar o Actualitzar)</h1>
        <label for="categorias">Categorias</label><br/>
        <select id="categorias" name="categorias" size="<?php echo $contar_numero_categorias_select?>" multiple="multiple">
        <?php
            while($row_categorias_select = mysqli_fetch_array($result_categorias_select, MYSQLI_ASSOC
))             {
        ?>
            <option value="<?php echo  $row_categorias_select['nombre_categoria_pc']?>"> 
            <?php echo ucfirst($row_categorias_select['nombre_categoria_usuario']) ?> </option>       
         <?php
            }
        ?>
         </select> 
         <br/>
         <br/>
        <input type="submit" name="seleccionar_categoria" value="Selecciona Categoria"/>
    </form>
  
  <?php
  
    /**************************************/
    if (isset($_GET['seleccionar_categoria']))     {
    $categorias = $_GET['categorias'];
 
    
    $hostname="*********";
    $user="********";
    $password="********";
    $database="**********";
    
    $query_categoria_productos_select ="
    SELECT 
    categorias.nombre_categoria_usuario,
    productos.nombre_producto_pc,
    productos.nombre_producto_usuario,
    productos.ruta_foto_pequeña,
    productos.precio_producto_kg 
    FROM productos INNER JOIN categorias 
    ON productos.categorias_nombre_categoria_pc = categorias.nombre_categoria_pc 
    WHERE categorias.nombre_categoria_pc = \"" .  $categorias . "\";";
    $result_categoria_productos_select = mysqli_query($link,$query_categoria_productos_select);  
    $contar_numero_filas_categoria_productos_select = mysqli_num_rows($result_categoria_productos_select);     ?>
    <form action="precio_final.php" method="get">
        <table>
    <?php
        $contador_categoria = 0;
        while($row_categoria_productos_select = mysqli_fetch_array($result_categoria_productos_select, MYSQLI_ASSOC
))         {
    ?>  
        <?php 
            if($contador_categoria == 0)
            { 
        ?>
            <td><h2><?php echo $row_categoria_productos_select['nombre_categoria_usuario']?></h2></td>
        <?php 
            } 
        ?>
        <tr>  
        <td><?php echo $row_categoria_productos_select['nombre_producto_usuario']?></td>
        <td><?php echo $row_categoria_productos_select['ruta_foto_pequeña']?></td>  
        <td><input type="hidden" name="nombre_producto_pc[]"  
        value="<?php echo $row_categoria_productos_select['nombre_producto_pc']?>"></td><br/></br/>
        <td><input type="text" name="precio_producto_kg[]" size="5" maxlength="5" 
        value="
<?php echo number_format($row_categoria_productos_select['precio_producto_kg'], 2, ',','.')?>"> €</td>
        </tr>       
        <?php
            $contador_categoria++;
        }
        ?>          
        </table>
        <input type="submit" name="actualitzar_precios" value="Actualitzar Precios" />  
    </form>
    
    <?php
    }
    /************************************/
    
    if (isset($_GET['actualitzar_precios']))     {
        $nombre_producto_pc = $_GET['nombre_producto_pc'];
    
        $precio_producto_kg = $_GET['precio_producto_kg'];
 
        $hostname="************";
        $user="************";
        $password="*********";
        $database="**********";
 
        for($precios_categoria_productos_updates = 0; $precios_categoria_productos_updates < $contar_numero_filas_categoria_productos_select; $precios_categoria_productos_updates++ )
        {   
            $query_precios_categoria_productos_updates = 
            'UPDATE productos 
            SET precio_producto_kg=' .  number_format($precio_producto_kg[$precios_categoria_productos_updates], 2, '.',',') .              ' WHERE nombre_producto_pc=  \'' . $nombre_producto_pc[$precios_categoria_productos_updates] . '\';';
            $result_precios_categoria_productos_updates = mysqli_query($link,$query_precios_categoria_productos_updates);         }   
    ?>
        </table>
    </form>
    <?php   
    }
    ?>
    </body>
</html>