Standardowa byłoby to:
header('Location: http://www.mywebsite.com/yourpage.php?id=32', TRUE, 302);
Ale odpowiedzi na swoje pytanie, tak nastąpi przekierowanie do strony X w bieżącym folderze, jeśli nie umieścić ukośnik na początku lub kompletnego adresu URL.
Oto pomysł, który proponuję zrobić dla każdej witryny, którą wykonujesz. W swoim pierwotnym pliku (głównego pliku php użyć jak config lub cokolwiek), tworzyć coś takiego:
define('URL', 'http://www.mywebsite.com/');
Więc podczas tworzenia przekierowania, link lub cokolwiek, to zrobić:
header('Location: '.URL.'yourpage.php?id=32', TRUE, 302);
EDYCJA: Listopad 2017 r. Jak wskazano poniżej @jordanbtucker, specyfikacja HTTP została zaktualizowana w czerwcu 2014 r. (Ten post pochodzi z 2012 r.), Aby umożliwić względne identyfikatory URI w nagłówku Lokalizacja.
jak to PHP, przeglądarka będzie nawet nie wiedzieć o nagłówku, to po prostu jej nie zauważa jest przekierowywany, ponieważ PHP jest wykonywane na serwerze. – 11684
@ 11684: Przeglądarka klienta bezwzględnie otrzyma nagłówek Location. Jak inaczej myślisz, że zdecyduje się zmienić swoją lokalizację? – webbiedave
@ 11684 Twoje zło. PHP jest wykonywane na serwerze, tak. Ale PHP wysyła nagłówek do przeglądarki (klienta), a klient robi to, co chce. –