Saludos nuevamente amigos del foro, el problema que tengo ahora es que cuando intento hacer un update de una tabla que se genera dinámicamente solo se esta guardando el ultimo valor modificado...ya me había pasado algo así pero con una tabla que era fija.
editar_plan.php
Código PHP:
$sql="SELECT Unidad_tematica,Subtemas,Fecha_prog,Fecha_real,Eva_prog,Eva_real,Por_aprobacion,Observaciones
FROM temarioplan,asignacion
WHERE asignacion.idAsignacion=temarioplan.idAsignacion
and temarioplan.idAsignacion=$id";
$result= mysql_query ($sql) or die(mysql_error());
$c=1;
$tabla=array();
while ($renglon2=mysql_fetch_array($result))
{
$tabla[$c]=$renglon2;
$c++;
}
for($i=1;$i<=count($tabla);$i++)
{
echo"<tr>
<table rules='cols' cellpadding='0' cellspacing='3' border='#90BFC7' id='tablin'>
<tr bgColor='' border='#90BFC7'>
<td width='180' ><textarea cols='20' rows='10' id='temas' name='temas".$i."'>".$tabla[$i]['Unidad_tematica']."</textarea></td>
<td width='177' ><textarea cols='20' rows='10' id='sub' name='sub".$i."' >".$tabla[$i]['Subtemas']."</textarea></td>
<td width='100' ><textarea cols='7' rows='10' id='fproga' name='fprogra".$i."' >".$tabla[$i]['Fecha_prog']."</textarea></td>
<td width='60' ><textarea cols='4' rows='10' id='freal' name='freal".$i."' >".$tabla[$i]['Fecha_real']."</textarea></td>
<td width='100' ><textarea cols='7' rows='10' id='eprogra' name='eprogra".$i."' >".$tabla[$i]['Eva_prog']."</textarea></td>
<td width='60' ><textarea cols='4' rows='10' id='ereal' name='ereal".$i."' >".$tabla[$i]['Eva_real']."</textarea></td>
<td width='90' ><textarea cols='6' rows='10' id='procentaje' name='porcentaje".$i."'>".$tabla[$i]['Por_aprobacion']."</textarea></td>
<td width='140'><textarea cols='12' rows='10' id='observacion' name='observacion".$i."' >".$tabla[$i]['Observaciones']."</textarea></td>
</tr>
}//for
Este archivo me genera una tabla que me muestra algo así:
tema1 subtema1 fechas1.....etc
tema2 subtema2 fechas2.....etc
teman subteman fechasn.....etc
adminedit_plan.php
Código PHP:
$Unidad =array($_POST['temas']);
$Subtemas =array($_POST['sub']);
$Fprog =array($_POST['fprogra']);
$Freal = array($_POST['freal']);
$Eprog = array($_POST['eprogra']);
$Ereal = array($_POST['ereal']);
$Aprobado =array($_POST['porcentaje']);
$Observaciones =array($_POST['observacion']);
$sql="SELECT idTemarioplan from temarioplan WHERE idAsignacion='$id'";
$resultado=mysql_query($sql) or die(mysql_error());
$cont=0;//contador para while
while($idAsig2 = mysql_fetch_array($resultado)){//while que toma los id de los registros
for($i=0;$i<(count($Unidad));$i++){//ciclo for para recorrer y actualizar los valores
$sql="UPDATE Temarioplan SET Unidad_tematica='$Unidad[$i]',Subtemas='$Subtemas[$i]',Fecha_prog='$Fprog[$i]',
Fecha_real='$Freal[$i]',Eva_prog='$Eprog[$i]',Eva_real='$Ereal[$i]',Por_aprobacion='$Aprobado[$i]',
Observaciones='$Observaciones[$i]'
WHERE idTemarioplan=".$idAsig2['idTemarioplan']."";
$resultado1=mysql_query($sql) or die(mysql_error());
}//fin for
echo $sql;
$cont++;
}//while
Pienso que el error esta en el primer archivo editar_plan.php que no se esta mandando como arreglo si solo el ultimo valor y ese llega al POST
si quito $i de los names funciona pero solo envía el ultimo valor ... y como esta en este momento me genera este error Notice: Undefined index: temas in en cada POST
espero que me puedan echar una mano de donde puedo estar equivocándome se los agradecería muchísimo