I show this data with select
and after the user queries you can edit three fields: Image, Treatment and Status . The State field is doing the update
correct in the table, but the input type="file"
and input type="text"
fields are only correct if you edit one row at a time. Here is the code:
$result_cursos = "SELECT centrodb.RegistoManutencao.Id,
DataRegisto,
Pedido,
Outro,
Descricao,
Funcionario,
Imagem,
Tratamento,
Estado
FROM centrodb.RegistoManutencao LEFT OUTER JOIN centrodb.InfoLuvas
ON centrodb.InfoLuvas.Id = centrodb.RegistoManutencao.Colaborador
WHERE Estado IS NULL OR Estado <> 'Concluído';";
$resultado_cursos = mysqli_query($conn, $result_cursos);
$tabela1 .= '<div style="float: center" table align="center">';
$tabela1 .= '<table border="5">';
$tabela1 .= '<tr>';
$tabela1 .='<thead>';
$tabela1 .= '<tr>';
$tabela1 .= '<th>Nº Registo</th>';
$tabela1 .= '<th>Data</th>';
$tabela1 .= '<th>Pedido</th>';
$tabela1 .= '<th>Outro Local</th>';
$tabela1 .= '<th>Descrição</th>';
$tabela1 .= '<th>Colaborador</th>';
$tabela1 .= '<th>Imagem</th>';
$tabela1 .= '<th>Tratamento</th>';
$tabela1 .= '<th>Estado</th>';
$tabela1 .= '</tr>';
$tabela1 .='</thead>';
$tabela1 .='<tbody>';
while($rows_cursos = mysqli_fetch_array($resultado_cursos)) {
$tabela1 .= '<tr>';
$tabela1 .= '<td>'.$rows_cursos['Id'].'</td>';
$tabela1 .= '<td>'.$rows_cursos['DataRegisto'].'</td>';
$tabela1 .= '<td>'.$rows_cursos['Pedido'].'</td>';
$tabela1 .= '<td>'.$rows_cursos['Outro'].'</td>';
$tabela1 .= '<td>'.$rows_cursos['Descricao'].'</td>';
$tabela1 .= '<td>'.$rows_cursos['Funcionario'].'</td>';
$tabela1 .= '<td> <input type="file" name= "Imagem" id= "Imagem" value="'.$rows_cursos['Imagem'].'"></td>';
$tabela1 .= '<td> <input type="text" name= "Tratamento" id= "Tratamento" value="'.$rows_cursos['Tratamento'].'"></td>';
$tabela1 .= '<td> <input type="radio" name= "Id['.$rows_cursos['Id'].']" value="Pendente"> Pendente <input type="radio" name= "Id['.$rows_cursos['Id'].']" value="Concluido">Concluido</td>';
$tabela1 .= '</tr>';
}
$tabela1 .= '</tr>';
$tabela1 .='</tbody>';
$tabela1 .= '</table>';
$tabela1 .= '</div>';
echo "<form method='POST' action=''>";
echo $tabela1;
echo "<input type='submit' name='registar' value='Registo'>";
echo "</form>";
?>
Where then in the update I create the variables in this way and I do update
:
<?php
if(isset($_POST['registar']))
{
$registro = $_POST['Id'];
$tratamento = $_POST['Tratamento'];
$imagem = $_POST['Imagem'];
foreach($registro as $Id => $estado) {
$conn->query("UPDATE RegistoManutencao SET Estado='".$estado."', Imagem = '$imagem', Tratamento = '$tratamento' WHERE Id='".$Id."'");
}
}
?>
I want when editing more than one line, it does the update
correct in the rows I'm editing and only makes correct in the state field. In the image and treatment field it is only correct if you do update
to one line at a time.