Mi código actualiza todos los registros en mi tabla de artículos en lugar de actualizar por id. Aquí está mi código. Soy muy nuevo en php, así que realmente agradeceré cualquier ayuda. Gracias chicos...
<div class="modal fade" id="active-id<?php echo $id;?>" tabindex="-1" role="dialog" aria-labelledby="myModalLabel8" aria-hidden="true"> <div class="modal-wrapper"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header bg-green"> <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button> <h4 class="modal-title" id="myModalLabel8">Article Title: <?php echo $article_title?></h4> </div> <div class="modal-body"> <p>Are you sure you want to activate this article?</p> </div> <div class="modal-footer"> <div class="btn-group"> <form method='post' role='form'> <button type='submit' name='active_yes' class='btn btn-success'>Yes</button> <button type='button' class='btn btn-success' data-dismiss='modal'>No</button> </form> </div> </div> <?php if (isset($_POST['active_yes'])){ if ($post_active == "No") { $sql = "UPDATE `articles` SET `post_active` = '1' WHERE `articles`.`id` = $id;"; if ($conn->query($sql) === TRUE) { echo "<script type='text/javascript'>alert('Article has been activated successfully and is currently live on the website.')</script>"; } else { echo "<script type='text/javascript'>alert('Cannot activate article now. Please Try Again Later!')</script>"; } } } ?> </div> </div> </div> </div>$sql = "ACTUALIZAR articles SET post_active = '1' WHERE articles . id = {$id}";
Eso es un pequeño problema con la consulta.
El código php también es incorrecto porque cuando envía el formulario, la página tiende a recargarse debido a su estrategia de código. Por lo tanto, el $id se pierde y el segmento php se ejecutará sin un $id, por lo que se actualizarán todos los datos de la tabla.
Primero verifique qué valor hay en la variable $id usando echo. Podría ser la razón por la que se está actualizando todo, ya que es posible que no se apruebe.
También intente editar su formulario para incluir su variable $id para que su script php pueda leerlo directamente desde el formulario;
<form method='post' role='form' action="#"> <input type="hidden" name="id" value="<?php echo $id; ?>"> <button type='submit' name='active_yes' class='btn btn-success'>Yes</button> <button type='button' class='btn btn-success' data-dismiss='modal'>No</button> </form> Y su variable $sql a;
$id = $_POST['id']; $sql = "UPDATE `articles` SET `post_active` = '1' WHERE `articles`.`id` = $id";Avíseme si le ayuda o si tiene algún problema.