¡Uf!
Al final después de mucho esfuerzo dí con el problema... (Pese a que aún no entiendo bien por qué da ese problema en concreto

)
el caso es que ahora, con este código funciona de maravilla:
Código PHP:
$sel_1 = "SELECT id_estadillo FROM estadillo WHERE id_producto='" . $_POST["id_producto"] . "'";
$que_1 = mysql_query ($sel_1, $dbh) or die ('I cannot execute the query because: ' . mysql_error () . '<br />And the query is: ' . $sel_1 . '<br />');
$n = mysql_num_rows ($que_1);
if ($n == 0)
{
$ins = "INSERT INTO estadillo(id_producto) VALUES('" . $_POST["id_producto"] . "')";
mysql_query ($ins, $dbh) or die ('I cannot execute the query because: ' . mysql_error () . '<br />And the query is: ' . $ins . '<br />');
@$knd_op = "new";
}
//Esto es el añadido, antes lo ponía antes de la consulta INSERT INTO
$sel_1 = "SELECT id_estadillo FROM estadillo WHERE id_producto='" . $_POST["id_producto"] . "'";
$que_1 = mysql_query ($sel_1, $dbh) or die ('I cannot execute the query because: ' . mysql_error () . '<br />And the query is: ' . $sel_1 . '<br />');
$x = mysql_fetch_array ($que_1);
for ($i = 0; $i < 31; $i++)
{
for ($j = 0; $j < 12; $j++)
{
$upd = "UPDATE estadillo SET " . $i . "_" . $j . "='" . $_POST["cols"][$j][$i] . "' WHERE id_estadillo='" . $x["id_estadillo"] . "'";
mysql_query ($upd, $dbh) or die ('I cannot execute the query because: ' . mysql_error (E_ALL) . '<br />And the query is: ' . $upd . '<br />');
}
}
El caso es que ahora (la cosa está claro es no funcionar a toda costa...

) me está dando error al visualizarlo... Y con este código
Código PHP:
<?php
$dias = array ();
for ($i = 0; $i <= 31; $i++)
$dias[$i] = $i;
$nombres = array ("Dia\Mes","enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre");
?>
<table cellspacing="0" summary="table" class="broom_table">
<thead><tr><?php for ($r_1 = 0; $r_1 < count ($nombres); $r_1++){?><th><?php echo $nombres[$r_1];?></th><?php }?></tr></thead>
<tbody>
<?php for ($r_1 = 1; $r_1 < count ($dias); $r_1 ++){?>
<tr<?php if ($r_1 % 2 == 0){echo " class=\"odd\"";}else{echo " class=\"even\"";}?>>
<?php $aux = 0;?>
<?php for ($r_2 = 0; $r_2 < count ($nombres); $r_2++){?>
<?php if ($aux == 0){?>
<td><?php echo $r_1;?></td>
<?php }else{?>
<?php
$sel_2 = "SELECT " . ($r_1 - 1) . "_" . ($r_2 - 1) . " AS campo FROM estadillo WHERE id_producto='" . $_GET["id_producto"] . "'";
$que_2 = mysql_query ($sel_2, $dbh) or die ('I cannot execute the query because: ' . mysql_error () . '<br />And the query is: ' . $sel_2 . '<br />');
$x = mysql_fetch_row ($que_2);
?>
<td><input type="text" name="cols[<?php echo ($r_1 - 1);?>][<?php echo ($r_2 - 1);?>]" value="<?php echo $x["campo"];?>" size="3" /></td>
<?php }?>
<?php $aux ++;?>
<?php }?>
</tr>
<?php $i++;}?>
<tr><td colspan="13"><input type="submit" value="Guardar" /></td></tr>
</tbody>
</table>
Me da otro de esos odiosos notice (la primera vez que los veo y ya me sacan de quicio... ¡Al menos con los errores y los warning tienes a qué atenerte!) en la línea 70 del script (que es esta en concreto)
Código PHP:
<td><input type="text" name="cols[<?php echo ($r_1 - 1);?>][<?php echo ($r_2 - 1);?>]" value="<?php echo $x["campo"];?>" size="3" /></td>
El notice en cuestión es este:
Código:
<b>Notice</b>: Undefined index: campo in <b>C:\Archivos de programa\EasyPHP 3.0\www\aplicacion\assets\php\modulos\mod_esta.php</b> on line <b>70</b><br />
¿Alguna sugerencia?