Na zona de repetição onde aparecem as mensagens, coloquei um botão para apagar. O mesmo só funciona se o form estiver como method=post e post no script do deletar.php. Se eu mudo pra get em ambos os arquivos não funciona. O problema é que quando eu uso post, ele envia todas as variáveis de cada botão. (Descobri isso usando get, a string é enviada assim: http://www.meudomini...3&id=24&id=2563) Assim, se eu quero deletar apenas a mensagem de id 24 ele manda tudo isso pro deletar.php e só a última mensagem é apagada do bd.
Código:
<input type="hidden" name="id" value="<?php echo $row_myRdset['id']; ?>"> <input type="submit" value="Apagar">
Assim, para ver se funcionava tentei outra coisa: usar um link direto (também está na zona de repetição, por isso, o código fica certo com apenas um código ID em vez de vários numa string):
Código:
<a href="http://www.meudomini...ar.php?id=<?php echo $row_myRdset['id']; ?>">clique aqui para apagar</a>
mas não funciona.
O arquivo deletar.php está assim:
Código:
if ((isset($_POST['id'])) && ($_POST['id'] != "")) { $deleteSQL = sprintf("DELETE FROM guestbook WHERE id=%s", GetSQLValueString($_POST['id'], "int")); mysql_select_db($database_conn, $conn); $Result1 = mysql_query($deleteSQL, $conn) or die(mysql_error()); mysql_query('DELETE FROM table WHERE id='.$_POST['id']); $deleteGoTo = "main.php"; if (isset($_SERVER['QUERY_STRING'])) { $deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?"; $deleteGoTo .= $_SERVER['QUERY_STRING']; } header(sprintf("Location: %s", $deleteGoTo)); }
O que posso fazer neste caso?
Qualquer ajuda é muito apreciada.