Un día aquí aburrido en el pueblo, me puse a pensar en hacer un script sencillito pero al final
resulta que no lo es tanto. He pensado en hacer un formulario con varias ID's que al seleccionarlas,
se borren. Este sería el ejemplo :
<?php
include("conectar.php");
$query = mysql_query("select * from mensajes order by id asc");
if(mysql_num_rows($query)==0){ echo 'No hay registros'; } else {
?>
<form name="form1" method="post" action="">
<?php while($b = mysql_fetch_array($query)){ ?>
<table width="542" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="20"><label>
<input type="checkbox" name="<?=$b['id']?>"/>
</label></td>
<td width="522"> <span class="Estilo1">ID : </span> <?=$b['nick']?></td>
</tr>
</table>
<?php } ?>
<label>
<input type="submit" name="Submit" value="Enviar">
</label>
</form>
<?php } ?>
<? if(isset($_POST['Submit'])){
$ultimaid = mysql_fetch_array(mysql_query("SELECT * FROM mensajes ORDER BY id DESC LIMIT 1"));
for($i = 1;$i <= $ultimaid['id'];$i++){
if($_POST[$i] != "on"){ echo ''.$i.' está vacía'; } else { mysql_query("DELETE FROM mensajes WHERE id = '".$i."'"); }
}}
?>Al parecer, yo no veo ningún error, pero ¿Que pasa?. Resulta que el codigo funciona de maravilla
pero a la segunda, es decir, yo eligo una ID y le doy a Enviar, el resultado, no se elimina pero si
lo vuelvo a marcar y dar a enviar, el resultado, es que si se borra.
He probado de millones de formas y no he encontrado la solución para hacerlo que se borre desde
la primera vez y no la segunda. he estado pensando que podría ser un
foreach(), pero
realmente como nunca lo he usado no se como aplicarlo. ¿Me ayudas?. Gracias
