Possible Duplicate:
Headers already sent by PHP
Here is my current script. Instead of redirecting like I would like it to, the page just refreshes to the current page. The page used to work, but stopped working recently for no reason. I'm on PHP 5.3
<?php
$page = "Edit Topic";
require('top.php');
$var = safe($_GET['id']);
$q = mysql_query("SELECT * FROM `topics` WHERE `id`='".$var."'");
$r = mysql_fetch_array($q);
$c = mysql_num_rows($q);
$user = mysql_fetch_array(mysql_query("SELECT * FROM `users` WHERE `id`='".$_SESSION['id']."'"));
if($c==0) {
echo "<p>This topic does not exist.</p>";
} elseif($_SESSION['name'] != $r['poster'] && $user['rank'] == "Member") {
echo "<p>This is not your topic.</p>";
} else {
if(isset($_POST['enter'])) {
$title = safe($_POST['title']);
$post = safe($_POST['post']);
if($post=='' || $title=='') {
$message = "You have to write something in your title and post.";
} else {
mysql_query("UPDATE `topics` SET `text`='".$post."' WHERE `id`='".$r['id']."'");
mysql_query("UPDATE `topics` SET `title`='".$title."' WHERE `id`='".$r['id']."'");
header("Location: http://www.domain.com/view-post/".$r['id']."");
}
}
}
?>