Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/07/2017, 07:15
3lmojj
 
Fecha de Ingreso: marzo-2016
Ubicación: Madrid
Mensajes: 31
Antigüedad: 8 años, 8 meses
Puntos: 1
Error en confirm con foreach

¡Hola a tod@s!
Estoy encontrándome con un problema que no sé solucionar en mi blog. A ver si podéis ayudarme a encontrar qué estoy haciendo mal. Gracias de antemano.
Tengo una página de administrador donde paso un foreach que me muestra un par de entradas por página y debajo de cada una se ven los botones de eliminar entrada y editar entrada. Con php soy capaz de hacer que cumplan su función. El código que funciona es éste.
Código PHP:
<?php foreach ($posts as $post): ?>
                        <div class="post">
                            <div class="post-heading">
                                <h3><a href="detalle.php?id=<?php echo $post['id']; ?>"><?php echo $post['titulo'] ; ?></a></h3>
                            </div>
                            <p><?php echo $post['textobreve'] ; ?></p>
                            <div class="bottom-article">
                              <ul class="meta-post">
                                <a href="editarentrada.php?id=<?php echo $post['id']; ?>" class="btn btn-info"><i class="fa fa-pencil-square-o" aria-hidden="true"></i> Editar</a>
                                <a href="eliminarentrada.php?id=<?php echo $post['id']; ?>" class="btn btn-danger"><i class="fa fa-times" aria-hidden="true"></i> Eliminar</a>
                              </ul>
                            </div> 
                      <?php endforeach; ?>
Pero yo quiero que antes de eliminar una entrada tras darle al botón, por ejemplo, aparezca un confirm. Lo he intentado de estas dos maneras:
La primera:
Código:
<a href='javascript:seguroEliminar("eliminarentrada.php?id=<?php echo $post['id']; ?>")' class="btn btn-danger"><i class="fa fa-times" aria-hidden="true"></i> Eliminar</a>
La segunda:
Código:
<button onclick = "seguroEliminar()" class="btn btn-danger" id="botonEliminar"><i class="fa fa-times" aria-hidden="true"></i>Eliminar</button>
Y éste es el script:
Código:
<script type="text/javascript">
                                  function seguroEliminar() {
                                    var seguroEliminar = confirm("¿Seguro que quieres eliminar esta entrada? (Esta acción no se puede deshacer).");
                                    if (seguroEliminar == true) {
                                      alert("Has eliminado la entrada");
                                      window.location.href="eliminarentrada.php?id=<?php echo $post['id']; ?>";
                                    }
                                    else {
                                      alert("No has eliminado la entrada");
                                    }
                                  }
                                </script>
El problema radica en que, con ambos códigos, al pulsar el botón de eliminar entrada de la entrada más reciente, se elimina la entrada menos reciente de las dos.
Es decir, si tengo dos entradas en la página con id 114 y 115 y hago click en el botón eliminar de la número 115, se elimina la 114.
Esto no ocurre si hago click en la menos reciente. Por ejemplo: si tengo la 109 y la 108 y hago clic en eliminar entrada en el botón de la 108, ésta se elimina correctamente.
¿Qué puede estar fallando?
Saludos.