Мы можем значительно упростить ваш код здесь. Уменьшение сложности почти всегда устраняет ошибки. :)
// There are several different methods to accomplish this, and you really
// should be using statements here, but both are out of scope of this question.
$ipBanQuery = sprintf("SELECT ip FROM banned_ips WHERE ip = '%s'", mysql_real_escape_string($_SERVER['REMOTE_ADDR']));
$result = mysql_query($ipBanQuery);
if (mysql_num_rows($result)) {
header('Location: http://www.google.com/');
exit();
}
Это также зависит от того, где вы вызываете этот код. Будьте уверены, что это вызывается перед любым выводом в браузер - случайные пробелы, HTML или другая отладочная информация будут препятствовать отправке каких-либо дополнительных заголовков. Проверьте журнал ошибок вашего веб-сервера, чтобы увидеть, происходит ли что-то нехорошее.