Repito tiene que ser algo así y si te fijas en los comentarios (linea en naraja) entenderás lo que se esta haciendo.
Si tu sistema te asegura que para cada noticia hay un id de autor luego si tienes id de notifcia tendras un id de autor, por lo tanto el if que controla los posibles errores te sirve para las dos consultas, puesto que si no hay id de noticia tampoco habrá de autor...
Código PHP:
//Guardas el id del autor en $AutorTopic puedes obtenerlo del $_GET si lo pasas
//como un parametro igual que estas haciendo con el id de noticia o de una
//consulta como te propuso [B]fhonorato[/B]
$AutorTopic=$_GET['AutorTopic'];
if ((isset($_GET['id'])) && ($_GET['id'] != "")) {
//Preparas sentencia SQL para borrar
$deleteSQL = sprintf("DELETE FROM posts WHERE id=%s",
GetSQLValueString($_GET['id'], "int"));
//Preparas sentencia SQL para modificar
$updateSQL = sprintf("UPDATE registro SET mensajes=mensajes-1
WHERE id = '$AutorTopic'");
mysql_select_db($database_FS, $FS);
//Ejecutas el borrado
$Result1 = mysql_query($deleteSQL, $FS) or die(mysql_error());
//Ejecutas el update
$Result1 = mysql_query($updateSQL, $FS) or die(mysql_error());
$deleteGoTo = "borrado.php";
if (isset($_SERVER['QUERY_STRING'])) {
$deleteGoTo .= (strpos($deleteGoTo, '?')) ? "&" : "?";
$deleteGoTo .= $_SERVER['QUERY_STRING'];
}
header(sprintf("Location: %s", $deleteGoTo));
}
Como puedes ver en el codigo si hay un id de noticia se ejecutan las dos consultas, si no no.
Quim