I make a module in which is a data update but it is massive by means of an excel.CSV, I have the following fields in my "worker" table, some are foreign keys of other table:
id_ControlPrimaria
nombre
ap_paterno
ap_materno
NSS
CURP
RFC
fecha_nac
id_puesto FK
id_area FK
idctg_turno FK
idctg_empresa FK
id_nomina FK
What I intend is that only the data of the idctg_turno
field be updated according to the id_Control
and the other data remain intact. Annex my code of massive update and also the query with which it updates, the problem that I have does not know if it is correct the way that I am doing it since it does not update any data.
Thank you.
It's the massive update code:
<?php
//nos permite recepcionar una variable que si exista y que no sea null
if (isset($_POST["enviar"])) {
require_once("conexion_excel.php");
require_once("functions_actualizar_turno.php");
$archivo = $_FILES["archivo"]["name"];
$archivo_copiado = $_FILES["archivo"]["tmp_name"];
$archivo_guardado = "copia_" . $archivo;
//echo $archivo . "esta en la ruta temporal: " . $archivo_copiado;
if (copy($archivo_copiado, $archivo_guardado)) {
//echo "se copeo correctamente el archivo temporal a nuestra carpeta de trabajo <br/>";
} else {
//echo "hubo un error <br/>";
}
if (file_exists($archivo_guardado)) {
$fp = fopen($archivo_guardado, "r"); //abrir un archivo
$rows = 0;
while ($datos = fgetcsv($fp, 1000, ";")) {
$rows ++;
// echo $datos[0] . " " . $datos[1] . " " . $datos[2] . " " . $datos[3] . "<br/>";
if ($rows > 1) {
$resultado = actualizar_datos($datos[0], $datos[1], $datos[2], $datos[3], $datos[4], $datos[5], $datos[6], $datos[7], $datos[8], $datos[9], $datos[10], $datos[11], $datos[12]);
if ($resultado) {
//echo "se inserto los datos correctamente<br/>";
} else {
//echo "no se inserto <br/>";
}
}
}
} else {
echo "No existe el archivo copiado <br/>";
}
}
?>
This is the query code to update the data:
<?php
function actualizar_datos($id_Control, $fecha, $hora) {
global $conexion;
$sentencia = "update trabajador (id_Control,nombre, ap_paterno, ap_materno, NSS, CURP, RFC, fecha_nac, id_puesto, id_area, idctg_turno, idctg_empresa, id_nomina) values ('$id_Control','$nombre','$ap_paterno','$ap_materno','$NSS','$CURP','$RFC','$fecha_nac','$id_puesto','$id_area','$idctg_turno','$idctg_empresa','$id_nomina')";
$ejecutar = mysqli_query($conexion, $sentencia);
return $ejecutar;
}
?>