Check to see if you are printing/echoing anything before you pass these headers.
Note, there cannot be ANY content (not even a measly whitespace) before any headers are sent out. If you want to prevent this, then use output buffering.
Also, if you are embedding PHP in the middle of the HTML code, your headers WILL NOT WORK! This is because the headers MUST be sent before the HTML output begins.
-sridhar