se mandi un header in php (ossia nel caso il reload), tale header dev'essere mandato prima di qualunque output a browser: in altre parole, prima di

header("Location: ....");

può essercì quanto php vuoi, a patto che non vengano eseguite istruzioni che comportino un output al browser, e meno che meno istruzioni html (nemmeno un spazio vuoto o un acapo).