You have a mistake.
Needs to be the first things that's being output, meaning, if you echo anything before this, it wont work, other wise it will work.
<?php header('Location: error.php'); ?>
For more info: php manual header function
You need to modify the header of your HTTP Response with the function header in php
<?php header("Location: home.php") ?>
Also you can add a particular header used by the browser. for example if your page has moved permanently, you can use:
<?php header('HTTP/1.1 301 Moved Permanently'); header("Location: home.php"); ?>
You can see more information about redirection on: http://en.wikipedia.org/wiki/URL_redirection
Sure. You can use a "meta redirect":
<meta http-equiv="refresh" content="2;url=http://webdesign.about.com/">