
insertar multiples registros al seleccionarlos con checkbox
Publicado por Alberto (9 intervenciones) el 30/08/2022 00:09:29
Buen dia
Estoy realizando el siguiente inserto a mi DB,todo bien me inserta el dato de todos los que selecciono mediante el check box si seleccion 3 los 3 registros los inserta el problema es que deberia registrarmelo con diferente numero de empleado pero me toma el valor del ultimo numero de empleado no me toma en cuenta los demas al principio solo realizaba un registro de los 3 seleccionados lo solucione y despues no guardaba el numero de empleado y lo arregle pero ahora solo guarda un solo numero de empleado
Me podrian orientar para saber que es lo que tengo mal redactado en mi codigo o que parte fue la que hice mal
El valor del numero de empleado lo tomo de un input que tengo oculto el cual me da el mismo valor que la columna codigo_persona
Codigo Formulario :
Codigo post:
Estoy realizando el siguiente inserto a mi DB,todo bien me inserta el dato de todos los que selecciono mediante el check box si seleccion 3 los 3 registros los inserta el problema es que deberia registrarmelo con diferente numero de empleado pero me toma el valor del ultimo numero de empleado no me toma en cuenta los demas al principio solo realizaba un registro de los 3 seleccionados lo solucione y despues no guardaba el numero de empleado y lo arregle pero ahora solo guarda un solo numero de empleado
Me podrian orientar para saber que es lo que tengo mal redactado en mi codigo o que parte fue la que hice mal
El valor del numero de empleado lo tomo de un input que tengo oculto el cual me da el mismo valor que la columna codigo_persona
Codigo Formulario :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
<tr>
<td>Certificacion:</td>
<!-- Campo de texto combinado con lista de opciones -->
<td>
<input type="text" name="certi" list="items" autocomplete="off" />
<!-- Lista de opciones -->
<datalist id="items">
<option value="Montacargas">Montacargas</option>
<option value="Navaja">Navaja</option>
<option value="Uso de pallet jack">Uso de pallet jack</option>
<option value="Electroestatica">Electroestatica</option>
<option value="Quimicos">Quimicos</option>
</datalist>
</td>
<td>Fecha de certificacion</td>
<td>
<input type="date" name="fechaCer" id="" />
</td>
<td>Fecha de vencimiento</td>
<td>
<input type="date" name="fechaVen" id="" />
</td>
</tr>
<br></br>
<br></br>
<table id="employee_data" class="table table-bordered table-striped">
<thead>
<tr>
<th> </th>
<th hidden> </th>
<th>Numero Reloj</th>
<th>Nombre</th>
<th>Puesto</th>
<th>Categoria</th>
<th>Departamento</th>
<th>Turno</th>
</tr>
</thead>
<tbody>
<?php
$fecha_actual = new DateTime(date('Y-m-d'));
while($row = mysqli_fetch_array($result)){
$id=$row['id_emp'];
?>
<tr>
<td><input type="checkbox" name="id[]" value="<?php echo $row['id_emp']; ?>" /></td>
<td hidden><input type="text" name="nr" value="<?php echo $row['codigo_persona']; ?>" /></td>
<td align=center>
<?= $row['codigo_persona'] ?>
</td>
<td align=center>
<?= $row['Nombre'] ?>
</td>
<td align=center>
<?= $row['Puesto'] ?>
</td>
<td align=center>
<?= $row['Categoria'] ?>
</td>
<td align=center>
<?= $row['Departamento'] ?>
</td>
<td align=center>
<?= $row['Turno'] ?>
</td>
</tr>
<?php
}
?>
</tbody>
</table>
<input type="submit" name="submit" value="Registrar" />
Codigo post:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
if (isset($_POST['submit'])){
$id=$_POST['id'];
$count = count($id);
$noreloj=$_POST['nr'];
$cer=$_POST['certi'];
$fech=$_POST['fechaCer'];
$ven=$_POST['fechaVen'];
for ($i=0; $i < $count; $i++) {
$llenar= strlen($cer) * strlen($fech) * strlen($ven) * strlen($noreloj);
if($llenar >0){
require("validate.php");
mysqli_query($link,"INSERT INTO certificaciones (Certificacion,Fecha_Cert,Fecha_Ven,empleado_id) VALUES ('$cer','$fech','$ven','$noreloj')")or die ("Error:No se ingresaron los datos:");
mysqli_close($link);
?>
<script>
alert("Se ha registrado exitosamente");
window.location.href='./../work/certifications.php';
</script>
<?php
}
else{
?>
<script>
alert("Faltan datos por llenar");
window.location.href='./../work/certifications.php';
</script>
<?php
}
}
}
?>
Imagen table
Valora esta pregunta


0