PHP - Sistema de mantenimientos

 
Vista:
sin imagen de perfil
Val: 26
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Sistema de mantenimientos

Publicado por Fronfolio (10 intervenciones) el 19/10/2018 17:27:32
Bien les explico cual es mi problema.

Estoy desarrollando un sistema de mantenimientos para un usuario, el chiste de todo esto es que me la puso difícil en una sola cosa.

Un sistema simple seria con una tabla que contenga los mantenimientos y estos se registrarían simplemente con unos datos en el POST.

Ahora lo complejo es que el desea poder agregar mas mantenimientos dependiendo de lo que el necesite para esto se crearía una ventana para agregar mas mantenimientos un ejemplo seria algo asi:

mantenimientos
maquina1= mantenimientos realizados: limpiar, brillar,revisar(estos son los mantenimientos que estan guardados en el sistema)

Lo que el necesita es que en la parte de los mantenimientos que hay (limpiar,brillar,revisar), el pueda agregar mas...

Tambien el desea saber que mantenimientos hizo por fechas y a distintas maquinas que va a tener enlazadas y todo esto queda en varios checkbox los cuales dicen:

checkeado= si se hizo el mantenimiento
no checkeado= no se hizo el mantenimiento

Ya hice una parte en esto y lo que hice fue crear dos tablas mas una llamada 'tipomantenimiento' y otra llamada 'mantenimientos' en las cuales almaceno en la primera (tipomantenimiento ) una id y el tipo de mantenimiento y en la otra (mantenimientos) una id, un tipo de mantenimiento y el nombre del mantenimieto.

con esto si el quiere agregar mas mantenimientos los asocia a un tipo de mantenimiento y listo.


ahora mi pregunta ante todo esto es:

¿Como hago para registrar los mantenimientos que haga en las maquinas y despues poder ver los mantenimientos que se realizaron?

De antemano muchas gracias por toda su ayuda...
1
2
3
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Ferney
Val: 26
Ha aumentado su posición en 4 puestos en PHP (en relación al último mes)
Gráfica de PHP

Sistema de mantenimientos

Publicado por Ferney (17 intervenciones) el 19/10/2018 23:06:16
Hola, es muy confuso lo que quieres pero según veo esta enredado desde las tablas, yo haría tres tablas; 1 con los datos de cada maquina (nombre, id, etc), una segunda tabla con los datos por tipo de mantenimiento (id mantenimiento, nombre mantenimiento, tipo mantenimiento, etc) y una tercera para romper la relación de las 2 tablas anteriores (id maquina, id mantenimiento, fecha mantenimiento, etc) despues de ordenar la base de datos podrás hacer las consultas necesarias. Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 26
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Sistema de mantenimientos

Publicado por Fronfolio (10 intervenciones) el 19/10/2018 23:19:59
asi mismo estan las tablas en la base de datos, a lo que voy es que necesito registrar varios mantenimientos, a que voy con esto un ejemplo seria:

En la tabla de maquinas tengo id, fechacreacion y nombre
En la tabla tiposmantenimiento tengo id y nombretipomantenimiento
En la tabla mantenimientos tengo id,nombretipomantenimiento y nombremantenimiento

entonces si yo tengo en la tabla de tiposmantenimiento los siguientes tipos:

id | nombretipomantenimiento
--------------------------------------------
1 | Limpieza
2 | Verificaciones


Y en la tabla de mantenimientos tengo lo siguiente:

id | nombretipomantenimiento |nombremantenimiento
-------------------------------------------------------------------------
1 | 1 | Limpiar pantalla
2 | 1 | Limpiar chasis
3 | 2 | Verificar corriente
4 | 2 | Verificar registros

Como hago para hacer un registro de esos mantenimientos no se en alguna tabla y luego saber que mantenimientos se le hicieron a cada maquina teniendo en cuenta de que por registro de mantenimiento a la maquina se le pueden hacer varios y estos se elijen con un checkbox algo así como e ve en la imagen que subí...
4
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Ferney
Val: 26
Ha aumentado su posición en 4 puestos en PHP (en relación al último mes)
Gráfica de PHP

Sistema de mantenimientos

Publicado por Ferney (17 intervenciones) el 19/10/2018 23:45:03
Para guardar seria algo así:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<select name="maquina" id="maquina">
    <option value="">Seleccione...</option>
</select>
<select name="limpieza" id="limpieza">
    <option value="">Seleccione...</option>
</select>
<input type="submit"><br>
<?php
include('conexion.php');
$veradmin = "SELECT * FROM tipomantenimiento";
$ver=mysqli_query($con, $veradmin);
while ($row = mysqli_fetch_array($ver))
{
?>
    <input type="checkbox" name="tipolimpieza[]" id="tipolimpieza" value="<?php echo $row['id'] ?>"><?php echo $row['mantenimiento'] ?><br>
<?php
}
?>

Y por otra parte en el archivo guardar:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?php
$maquina = $_POST['maquina'];
$mantenimiento = $_POST['mantenimiento'];
include('conexion.php');
if(isset($_POST['tipolimpieza'])){
    foreach ($_POST[tipo'limpieza'] as $lim => $val)
    {
        $inscur = "INSERT INTO tabla VALUES ('$maquina', '$mantenimiento', '$tipolimpieza')";
        $iu = mysqli_query($con, $inscur);
    }
}else{
    echo "No hay tipo limpieza seleccionadas";
}
?>
Algo asi.
Espero le sirva
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 26
Ha aumentado su posición en 5 puestos en PHP (en relación al último mes)
Gráfica de PHP

Sistema de mantenimientos

Publicado por Fronfolio (10 intervenciones) el 20/10/2018 14:58:32
Al hacerlo de esa forma en la tabla como quedarían los registros, a lo que voy es que necesito saber cuales mantenimientos se hicieron por que hay que mostrarlos después. Por que de esta forma solo enviaria los datos varias veces con un tipo de limpieza diferente no?

osea que si yo selecciono dos tipos entonces me deja un registro con una y el otro con la otra verdad....

hay alguna forma de hacer que no quede asi o esa seria la unica forma?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar