Ferreira_Filho Postado Agosto 2, 2020 Denunciar Share Postado Agosto 2, 2020 Estou tentando fazer um update de vários registros com checkbox, mais não está atualizando no banco de dados MySQL. Segue o meu código, desde já agradeço! <?php include_once("../config/conexao.php"); $nivel = $_SESSION['nivel']; if ($_SESSION['nivel'] == 4) { $sql = "SELECT ID, NOME, VOLUNTARIO FROM cidadao ORDER BY NOME"; $res = mysql_query($sql) or die (mysql_error() ); if (mysql_num_rows($res) > 0 ) echo '<form method="post">'; ?> <table width="431" border="0" align="center" cellpadding="0" class="bordaFina"> <tr bgcolor="#999999" > <td width="302" align="center" valign="middle" bgcolor="#F0F0F0" class="style27">Nome </td> <td width="123" align="center" valign="middle" bgcolor="#F0F0F0" class="style27">Voluntário</td> </tr> <?php while ($row = mysql_fetch_assoc($res)) { ?> <tr > <td><?php echo $row["NOME"];?></div></td> <td ><div align="center"> <input type="checkbox" name= "VOLUNTARIOS[<?php $row["ID"] ?>]" value="1" <?php if($row["VOLUNTARIO"] == 1){ echo "checked";} ?>> <input type="hidden" name= "VOLUNTARIOS[<?php $row["ID"] ?>]" value="0" <?php if($row["VOLUNTARIO"] == 0){ echo ""; } ?>> </div></td> </tr> <?php } //End While ?> </table> <p><div align="center"><?php echo '<input type="submit"name= "submit" value= "Salvar">';?></div> <?php if (isset ($_POST["submit"])) { foreach($_POST['VOLUNTARIOS'] as $ID => $VOL) {mysql_query("update cidadao SET VOLUNTARIO ='$VOL' WHERE ID='$ID'")or die(mysql_error()); } echo "<meta HTTP-EQUIV='refresh' CONTENT='1;URL=teste.php'>"; } ?> <?php echo'<br>'; echo '</form>'; }//endif ?> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 marcoscasagrande Postado Agosto 17, 2020 Denunciar Share Postado Agosto 17, 2020 Tenta usar isso, se não der certo vou tentar te ajudar. <?php include_once("../config/conexao.php"); $nivel = $_SESSION['nivel']; if ($_SESSION['nivel'] == 4){ $sql = "SELECT ID, NOME, VOLUNTARIO FROM cidadao ORDER BY NOME"; $res = mysql_query($sql) or die (mysql_error()); if (mysql_num_rows($res) > 0 ){ ?> <form method="post"> <table width="431" border="0" align="center" cellpadding="0" class="bordaFina"> <tr bgcolor="#999999" > <td width="302" align="center" valign="middle" bgcolor="#F0F0F0" class="style27">Nome </td> <td width="123" align="center" valign="middle" bgcolor="#F0F0F0" class="style27">Voluntário</td> </tr> <?php while ($row = mysql_fetch_assoc($res)){ ?> <tr > <td><?php echo $row["NOME"];?></div></td> <td > <div align="center"> <input type="checkbox" name= "VOLUNTARIOS[<?php $row["ID"] ?>]" value="1" <?php if($row["VOLUNTARIO"] == 1){ echo "checked";} ?>> <input type="hidden" name= "ID[]" value="<?php if($row["VOLUNTARIO"] == 0) echo ""; else: echo $row["ID"]; endif; ?>" > </div> </td> </tr> <?php } //End While ?> </table> <p><div align="center"><?php echo '<input type="submit"name= "submit" value= "Salvar">';?></div> </br> </form> <?php } } ?> <?php $dados = filter_input_array(INPUT_POST,FILTER_DEFAULT); if (isset($dados['submit'])): foreach($dados['id'] as $ID) { $VOL = $dados['VOLUNTARIO'][$ID]; mysql_query("update cidadao SET VOLUNTARIO ='$VOL' WHERE ID='$ID'")or die(mysql_error()); } echo "<meta HTTP-EQUIV='refresh' CONTENT='1;URL=teste.php'>"; } endif; ?> Mas é preciso melhorar um pouco esses códigos, com força de coragem chega lá, já passei por isso. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Ferreira_Filho
Estou tentando fazer um update de vários registros com checkbox, mais não está atualizando no banco de dados MySQL. Segue o meu código, desde já agradeço!
<?php
include_once("../config/conexao.php");
$nivel = $_SESSION['nivel'];
if ($_SESSION['nivel'] == 4)
{
$sql = "SELECT ID, NOME, VOLUNTARIO FROM cidadao ORDER BY NOME";
$res = mysql_query($sql) or die (mysql_error() );
if (mysql_num_rows($res) > 0 )
echo '<form method="post">';
?>
<table width="431" border="0" align="center" cellpadding="0" class="bordaFina">
<tr bgcolor="#999999" >
<td width="302" align="center" valign="middle" bgcolor="#F0F0F0" class="style27">Nome </td>
<td width="123" align="center" valign="middle" bgcolor="#F0F0F0" class="style27">Voluntário</td>
</tr>
<?php
while ($row = mysql_fetch_assoc($res))
{
?>
<tr >
<td><?php echo $row["NOME"];?></div></td>
<td ><div align="center">
<input type="checkbox" name= "VOLUNTARIOS[<?php $row["ID"] ?>]" value="1" <?php if($row["VOLUNTARIO"] == 1){ echo "checked";} ?>>
<input type="hidden" name= "VOLUNTARIOS[<?php $row["ID"] ?>]" value="0" <?php if($row["VOLUNTARIO"] == 0){ echo ""; } ?>>
</div></td>
</tr>
<?php
} //End While
?>
</table>
<p><div align="center"><?php echo '<input type="submit"name= "submit" value= "Salvar">';?></div>
<?php
if (isset ($_POST["submit"]))
{
foreach($_POST['VOLUNTARIOS'] as $ID => $VOL)
{mysql_query("update cidadao SET VOLUNTARIO ='$VOL' WHERE ID='$ID'")or die(mysql_error()); }
echo "<meta HTTP-EQUIV='refresh' CONTENT='1;URL=teste.php'>";
}
?>
<?php
echo'<br>';
echo '</form>';
}//endif
?>
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.