Weiterleitung auf Unterseite Subdomain (header location) ?!

D-LuX

Erfahrenes Mitglied
Versuche nochmal mein Problem zu schildern:

Wenn der Besucher das 1. Mal auf die Seite kommt (index.php aufruft), soll die Unterseite angezeigt werden.
Also muss in die index:
PHP:
header("Location: http://firma.subdomain.de/firma.php");

danach soll der header location in der index.php aber nicht mehr aktiv sein, wenn ich jetzt von der firma.php auf die index.php im Menü wechseln will.

Werde ja bisher logisch wenn ich die index aufrufe, auch durch das Menü, auf die firma.php weitergeleitet.

Gibt es noch eine andere Möglichkeit einfach nur beim ersten Aufruf der Subdomain die firma.php anzeigen zu lassen und dann ganz normal wieder navigieren kann?

Hoffe ihr versteht mich :o
 
Das lässt sich mit Sessions einfach realisieren.

am Anfang jeder Datei muss vor der ersten ausgabe ein session_start(); stehen

und in der index.php machst du dann:


PHP:
session_start();
if(!isset($_SESSION['already_redirected']){
    $_SESSION['already_redirected'] = true;
    header("Location: http://firma.subdomain.de/firma.php");  
}


Edit: Mit Cookies zusätzlich währe es auch sichergestellt wenn ein benutzer wieder kommt das er gleich richtig navigieren kann.
 
Zuletzt bearbeitet:
Spotan fällt mir nur dazu nur ein die IP Abfragen und in die Db eintragen.War der User schon da dann steht auch seine ip in der Db daher wird dann das andere Header gesendet.
Wenn die ip noch net drin ist dann 1 header senden.

Wenn man will kann man ja nach bestimmter Zeit die IP wieder rauslöschen.

Mfg Splasch
 
PHP:
session_start();
if(!isset($_SESSION['already_redirected']){
    $_SESSION['already_redirected'] = true;
    header("Location: http://firma.subdomain.de/firma.php");  
}

Hallo Michael ;)

Also das funktioniert schonmal sehr schön beim ersten Mal.
Wenn ich jetzt allerdings die Seite ein 2.Mal aufrufe, werde ich wieder auf die index.php geleitet.

Muss die Session irgendwie beendet und gelöscht werden, damit sie bei jedem Aufruf neu gestartet wird?

Wenn ja, könntest du mir noch kurz sagen, wie? Danke schonmal ;)

PS: splasch, dir trotzdem danke ..aber das scheint recht komplex für die kleine Sache :)
 
Damit die Session nicht abreist musst du in allen PHP Dateien session_start() verwenden,
als zusatz kannst du wie bereits erwähnt Cookies einsetzen. Ich würde den Dualbetrieb generell vorschlagen, da sonst eine Person die Cookies deaktivert hat nicht auf die Index kommt.

Und Personen die die seite einen Tag später wieder besuchen sehen auch gleich die index.
 
Das hab ich getan, also auf der firma.php, die aufgerufen werden soll und auf der index.php!

Sind die anderen Seiten davon auch betroffen?
Oder hat das Problem was mit cookies zu tun ..

Ist es nicht möglich, die Session zu beenden sobald die firma.php verlassen wird, um sie bei erneuten aufrufen der subdomain neu beginnen zu lassen ...damit die Weiterleitung bzw. Session wieder neu gestartet wird?

oder habe ich nen Denkfehler? :rolleyes::confused:

Edit:

Habs jetzt mal so gemacht und es scheint zu funktionieren:

PHP:
if(!isset($_SESSION['already_redirected']))
  {
  $_SESSION['already_redirected'] = true;
  header("Location: http://firma.subdomain.de/firma.php");  
  }  
  else
   {
   session_destroy();
   }

ist dem was auszusetzen? Scheint zu klappen ;)
 
Zuletzt bearbeitet:
Zurück