Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/01/2012, 12:53
mixzplit
 
Fecha de Ingreso: enero-2011
Ubicación: Maracaibo
Mensajes: 179
Antigüedad: 13 años, 10 meses
Puntos: 2
Actualizar varios Registros

Hola compañeros, vuelvo a escribirle con un problema q no le he podido dar la vuelta aun.

Quiero hacer una actualizacion de varios registros,quizas parezca un tema de MySQL, la cuestion es que tengo un formulario donde envio un periodo de una semana del año, envio a una consulta donde me mostrara una lista con ciertos trabajadores dentro de ese rango de fechas seleccionado.

Ahora bien esa lista, tiene al lado de los trabajadores varios input text donde se podria modificar las horas trabajadas por cada dia de la semana seleccionada, ok la cuestion es la siguiente.

Estoy enviando ese formulario pero al hacer el UPDATE solo me esta actualizando los datos del ultimo trabajador de la lista, lo que hice fue meter el UPDATE dentro de un FOR pero sigue igual, colocare el codigo a ver si me pueden ayudar

horas.php
Código PHP:
<?
include("./Scripts/funcion.php");
include(
"conexion.php");
$conexion = new ControlBD();
$conexion->conectar();
$conexion->seleccionarBD();

$grupo $_POST['grupos'];
$fechaDesde cambiar_a_mysql($_POST['fch_dsd']);
$fechaHasta cambiar_a_mysql($_POST['fch_hst']);

$query="SELECT codigo,mar_codtra,MAR_HORLUN,MAR_HORMAR,MAR_HORMIE,MAR_HORJUE,MAR_HORVIE,MAR_HORSAB,MAR_HORDOM,
       MAR_HOREXT,MAR_HORNOC,MAR_HEDL,MAR_HEDM,MAR_HEDMI,MAR_HEDJ,MAR_HEDV,MAR_HEDS,MAR_HEDD,MAR_HENL,
         MAR_HENM,MAR_HENMI,MAR_HENJ,MAR_HENV,MAR_HENS,MAR_HEND,SALARIO,NOMBRE,APELLIDO,CEDULA,TURNO,
         JOR_DESCRI,FECHA_ING,FECHA_NAC,COD_DPTO,DEP_DESCRI,GRUPO,gtr_descri,cod_cargo,car_descri,
         NIVEL_EDUC,EDO_CIVIL, TRUNCATE(PERIOD_DIFF(DATE_FORMAT(CURDATE(),'%Y%m'),
         DATE_FORMAT(FECHA_NAC,'%Y%m'))/12,0) AS ANOS,MOD(PERIOD_DIFF(DATE_FORMAT(CURDATE(),'%Y%m'),
         DATE_FORMAT(FECHA_NAC,'%Y%m')),12) AS cMES FROM nmtrabajador   
       INNER JOIN nmdpto ON dep_codigo=cod_dpto   
       INNER JOIN nmgrupo ON gtr_codigo=grupo   
       INNER JOIN nmcargos ON car_codigo=cod_cargo 
       INNER JOIN nmjornadas ON turno=jor_codigo
        INNER JOIN nmmarcacion ON mar_codtra=codigo    
        WHERE condicion='A' AND gtr_codigo='$grupo'"
;
$result=$conexion->ejecutarQuery($query);
#****************Probando con enlace a NMMARCACION para Mostrar las Marcaciones Importadas*****************************#

$date="SELECT DATE('$fechaDesde') as Hoy,
        WEEKDAY(DATE('$fechaDesde')) as DiaSemana,
        DATE_SUB(DATE('$fechaDesde'),INTERVAL WEEKDAY(DATE('$fechaHasta')) DAY) as primerDiaSemana,
        DATE_ADD(DATE_SUB(DATE('$fechaDesde'),INTERVAL WEEKDAY(DATE('$fechaHasta')) DAY),INTERVAL 1 DAY) as segundoDiaSemana,
        DATE_ADD(DATE_SUB(DATE('$fechaDesde'),INTERVAL WEEKDAY(DATE('$fechaHasta')) DAY),INTERVAL 2 DAY) as tercerDiaSemana,
        DATE_ADD(DATE_SUB(DATE('$fechaDesde'),INTERVAL WEEKDAY(DATE('$fechaHasta')) DAY),INTERVAL 3 DAY) as cuartoDiaSemana,
        DATE_ADD(DATE_SUB(DATE('$fechaDesde'),INTERVAL WEEKDAY(DATE('$fechaHasta')) DAY),INTERVAL 4 DAY) as quintoDiaSemana,
        DATE_ADD(DATE_SUB(DATE('$fechaDesde'),INTERVAL WEEKDAY(DATE('$fechaHasta')) DAY),INTERVAL 5 DAY) as sextoDiaSemana,
        DATE_ADD(DATE_SUB(DATE('$fechaDesde'),INTERVAL WEEKDAY(DATE('$fechaHasta')) DAY),INTERVAL 6 DAY) as ultimoDiaSemana "
;
$fecha=$conexion->ejecutarQuery($date);
$semana=mysql_fetch_array($fecha);

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=latin1" />
<title>Horas Laborales</title>
<script type="text/javascript" src="./Scripts/jquery-1.6.1.js"></script>
<link rel=stylesheet href="./Style/default.css" type="text/css">
</head>

<body>
<form name="marcacion" action="actualizar_mar.php" method="post">
<table class="horas" id="prueba">
  <thead>
    <tr>
        <th colspan="35">Nomina Personal Indirecto: </th>
    </tr>
    <tr>
        <th colspan="35">Periodo: </th>
    </tr>
 
    <tr id="m-header">
        <th rowspan="3">Cod. Trabajador</th>
        <th rowspan="3">Apellido y Nombre</th>
        <th rowspan="3">Cedula</th>
        <th rowspan="3">Clasificacion</th>
        <th rowspan="3">Afiliacion</th>
        <th rowspan="3">Sueldo Diario</th>
        <th rowspan="3">Fecha Ingreso</th>
        <th rowspan="3">Turno</th>
        <th rowspan="3"></th>
        <th colspan="3">Lunes</th>
        <th colspan="3">Martes</th>
        <th colspan="3">Miercoles</th>
        <th colspan="3">Jueves</th>
        <th colspan="3">Viernes</th>
        <th colspan="3">Sabado</th>
        <th colspan="3">Domingo</th>
    </tr>
    <tr>
        <th colspan="3"><? echo cambiar_fecha($semana['2']) ?></th>
        <th colspan="3"><? echo cambiar_fecha($semana['3']) ?></th>
        <th colspan="3"><? echo cambiar_fecha($semana['4']) ?></th>
        <th colspan="3"><? echo cambiar_fecha($semana['5']) ?></th>
        <th colspan="3"><? echo cambiar_fecha($semana['6']) ?></th>
        <th colspan="3"><? echo cambiar_fecha($semana['7']) ?></th>
        <th colspan="3"><? echo cambiar_fecha($semana['8']) ?></th>
    </tr>
    <tr>
        <th>H.N</th>
        <th>H.EXT</th>
        <th>H.E.N</th>
        <th>H.N</th>
        <th>H.EXT</th>
        <th>H.E.N</th>
        <th>H.N</th>
        <th>H.EXT</th>
        <th>H.E.N</th>
        <th>H.N</th>
        <th>H.EXT</th>
        <th>H.E.N</th>
        <th>H.N</th>
        <th>H.EXT</th>
        <th>H.E.N</th>
        <th>H.N</th>
        <th>H.EXT</th>
        <th>H.E.N</th>
        <th>H.N</th>
        <th>H.EXT</th>
        <th>H.E.N</th>
    </tr>
 </thead>
 
 <tbody style="overflow:auto;" >
<? while($array=mysql_fetch_array($result)){ ?>

    <tr>
        <td style="font-size:10px"><?=$array['codigo']?></td>
        <td style="font-size:10px"><?=$array['APELLIDO']." ".$array['NOMBRE']?></td>
        <td style="font-size:9px"><?=$array['CEDULA']?></td>
        <td style="font-size:9px"><?=$array['DEP_DESCRI']?></td>
        <td style="font-size:9px"><?=$array['gtr_descri']?></td>
        <td style="font-size:10px"><?=number_format($array['SALARIO'],2,",",".")?></td>
        <td style="font-size:9px"><?=$array['FECHA_ING']?></td>
        <td style="font-size:9px"><?=$array['JOR_DESCRI']?></td>
        <td></td>
        <td><input type="text" name="MAR_HORLUN[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HORLUN']); ?>" /></td>
        <td><input type="text" name="MAR_HEDL[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEDL']); ?>" /></td>
        <td><input type="text" name="MAR_HENL[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HENL']); ?>" /></td>
        <td><input type="text" name="MAR_HORMAR[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HORMAR']); ?>" /></td>
        <td><input type="text" name="MAR_HEDM[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEDM']); ?>" /></td>
        <td><input type="text" name="MAR_HENM[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HENM']); ?>" /></td>
        <td><input type="text" name="MAR_HORMIE[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HORMIE']); ?>" /></td>
        <td><input type="text" name="MAR_HEDMI[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEDMI']); ?>" /></td>
        <td><input type="text" name="MAR_HENMI[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HENMI']); ?>" /></td>
        <td><input type="text" name="MAR_HORJUE[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HORJUE']); ?>" /></td>
        <td><input type="text" name="MAR_HEDJ[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEDJ']); ?>"/></td>
        <td><input type="text" name="MAR_HENJ[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HENJ']); ?>" /></td>
        <td><input type="text" name="MAR_HORVIE[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HORVIE']); ?>" /></td>
        <td><input type="text" name="MAR_HEDV[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEDV']); ?>" /></td>
        <td><input type="text" name="MAR_HENV[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HENV']); ?>" /></td>
        <td><input type="text" name="MAR_HORSAB[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HORSAB']); ?>" /></td>
        <td><input type="text" name="MAR_HEDS[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEDS']); ?>" /></td>
        <td><input type="text" name="MAR_HENS[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HENS']); ?>" /></td>
        <td><input type="text" name="MAR_HORDOM[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HORDOM']); ?>" /></td>
        <td><input type="text" name="MAR_HEDD[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEDD']); ?>" /></td>
        <td><input type="text" name="MAR_HEND[]" size="4" maxlength="2" class="hinput" value="<?=ROUND($array['MAR_HEND']); ?>" /></td>
        <input type="hidden" value="<?=$fechaDesde?>" name="fecha_desde[]" />
        <input type="hidden" value="<?=$fechaHasta?>" name="fecha_hasta[]" />
        <input type="hidden" value="<?=$array['codigo']?>" name="codigo_trab[]" />
    </tr>
<? }  ?>
</tbody>
</table>
<td><input type="submit" value="Actualizar" class="button"  /></td>
</form>
</body>
</html>
Este es el formulario donde envio las horas

Continuo....