PHP: Keine Weiterleitung durch 'header()' möglich

servergod

servergod

Neues Mitglied
Thread Starter
Dabei seit
12.07.2006
Beiträge
8
Reaktionspunkte
0
Hallo! Mein erster Thread im MacUser-Forum; und wahrscheinlich nicht der letzte.

Ich habe folgendes Problem: Ich bin gerade vom PC auf Mac (MacBookPro) umgestiegen und kämpfe mit einem Problem das ich leider nicht allein beheben kann. Ich habe mir MAMP installiert um meine PHPSites local anschauen zu können. Funktioniert alles reibungslos bis auf zwei kleine Sachen.

1.)
Eine meiner Seiten nutzt für die Weiterleitung im UserLogIn-Script die Funktion
Code:
header('Location: ...');
um den User in seinen persönlichen LogInBereich weiterzuleiten. Auf meinem Webserver im Netz funktioniert das einwandfrei, auf meinem Localhost allerdings nicht - statt den User weiterzuleiten bleibt der Browser auf der Seite die dieses Script nutzt stehen.

2.)
Eine meiner Seiten funktioniert nach dem Linkschema "?go=home, "?go=tutorials", etc...
Per include wird die jeweilige Seite inkludiert (include($go.".php");
Auch das klappt nur auf meinem Webserver im Netz, nicht aber in meiner LocalhostUmgebung.

Weiss jemand woran das liegen kann? Da wäre mir wirklich geholfen.

Danke für eure Antworten! Bin auch über ICQ/Skype zu erreichen.

thx, servergod.
 
Vielleicht liegt es am Apache oder PHP5.
Keine Ahnung!
 
Das Fehlschlagen von header(); kann daran liegen, daß vor dem Befehl bereits Daten zum Server gingen. Laut HTML-Spezifikation ist das nicht erlaubt. Die Spezi sagt auch, daß der Pfad innerhalb header('Location: '); absolut sein muss. Es könnte sein, dass die Pfad-Angabe im generierten Dokument nicht mit Document-Root übereinstimmt oder korrekt aufgelöst werden kann, wenn Du sie lokal öffnest. Du solltest die $_SERVER['DOCUMENT_ROO''] mal checken.
 
servergod schrieb:
Eine meiner Seiten funktioniert nach dem Linkschema "?go=home, "?go=tutorials", etc...
Per include wird die jeweilige Seite inkludiert (include($go.".php");
Auch das klappt nur auf meinem Webserver im Netz, nicht aber in meiner LocalhostUmgebung.

Hmm, per URL übergebene Parameter müssen über den $_GET Array übernommen werden, machst Du das?

Du könntest es so machen

PHP:
if (isset($_GET['go'])) {
   $url = $_GET['go'] . ".php";
   include($url);
}

oder direkt per Kurzversion

PHP:
if (isset($_GET['go'])) {include($_GET['go'].".php");}

Oder hast Du die Datenübergabe bloss nicht gepostet?

2nd
 
Zurück
Oben Unten