Fossi: Wenn keine

Hallo zusammen,

meine kompletten Seiten funktionieren in dem Stil "index.php?seite=blabla". Dies habe ich mit einer switch case Abfrage gemacht.

wenn nun aber jemand nur die datei angibt "index.php" ohne query string, dann würde ich gerne, dass er auf die seite "index.php?seite=home" kommt. Ich habe hier mal was gemacht, aber es funktioniert irgendwie nicht.

<?php
$foo1 = "$_SERVER[SERVER_NAME]";
$foo2 = "$_SERVER[REQUEST_URI]";

if ("$foo1$foo2" == "http://www.meineseite.de/index.php")
{
  header ("Location: http://www.meineseite.de/index.php?go=main");
  exit;
}
?>

habt ihr vielleicht eine ahnung weshalb das nicht funktioniert?

gruß Fossi

  1. Hi
    probs hiemit mal:

    if ($go == ""){
      $go = "home";
    }

    bye

    1. funzt!

      danke dir

      fossi

  2. Hallo Fossi,

    meine kompletten Seiten funktionieren in dem Stil "index.php?seite=blabla". Dies habe ich mit einer switch case Abfrage gemacht.

    wenn nun aber jemand nur die datei angibt "index.php" ohne query string, dann würde ich gerne, dass er auf die seite "index.php?seite=home" kommt. Ich habe hier mal was gemacht, aber es funktioniert irgendwie nicht.

    Warum nimmst Du nicht "home" als default in der Switch-Anweisung?

    $foo1 = "$_SERVER[SERVER_NAME]";
    $foo2 = "$_SERVER[REQUEST_URI]";

    if ("$foo1$foo2" == "http://www.meineseite.de/index.php")

    SERVER_NAME enthaelt keine Protokollangabe (http://).

    Beste Gruesse

    Jan

    1. Hallo Jan,

      Warum nimmst Du nicht "home" als default in der Switch-Anweisung?

      weil bei default die DAtei "Error 404" aufgerufen wird, falls jemand was falsch in der variabel geschrieben hat, wird diese fehlermeldung per mail an mich geschickt.

      gruß fossi.

      p.s. hat jetzt aber funkt. mit dem tipp vom ischi

  3. Hallo Fossi,

    if ("$foo1$foo2" == "http://www.meineseite.de/index.php")
    habt ihr vielleicht eine ahnung weshalb das nicht funktioniert?

    Du machst einen Stringvergleich zwischen "$foo1$foo2" und "http://www.meineseite.de/index.php", und diese beiden Strings sind nun einmal nicht gleich. Du solltest dich damit beschäftigen, wie du mit Strings/Variablen/Ausdrücken in PHP umgehst - Grundlagen also.

    Grüße aus Barsinghausen,
    Fabian