Refer Check mit Seitenvariablen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Refer Check mit Seitenvariablen

    Hi Leute,

    ich habe ein Verwaltungstool für eine HP gebaut. Dabei steht das Menü in der index.php und per "index.php?page=seitedieaufgerufenwerdensoll" wird dann die gewünschte Seite aufgerufen.

    Wenn man nun etwas anlegen möchte, z.B. eine neue News, dann ist der Dateiname des Formulars "create_news.php" und der Eintrag dann in der "create_news_do.php". Also sieht die ganze url dann so aus: "index.php?page=create_news" und dann wird die Datei, includet:

    PHP-Code:
    include ($page.".php"); 
    Gut, das funkt. Aber nun möchte ich in der "create_news_do.php" einen Refer-Check einbauen, der einen Error ausgibt, wenn man direkt über die Adresszeile "create_news_do.php" eingibt, ohne von der "create_news.php" zu kommen.

    Refer-Check sieht bei mir so aus:A

    PHP-Code:
    // Referrer
    $refer getenv("HTTP_REFERER");

    // aus $refer wird NUR der Dateiname ausgegeben
    $url_info parse_url($refer);
    $pfad $url_info[path];
    $array_refer explode("/",$pfad);
    $filename_refer end($array_refer); 
    Wenn ich nun $filename_refer ausgebe, bekomme ich aber immer nur "index.php". und ich bräuchte aber noch, dass "?page=create_news" dabeisteht. Kann man diese Seitenvariable auch checken?

    Big TNXXX,

    Lukas

    P.S. Sorry, wegen der langen Anfrage, aber ich möchte gleich, dass ihr wisst, worum es bei mir geht, damit gleich alles klaro ist

  • #2
    Hallo,

    Auszug aus php.net/parse-url:
    --
    $url=parse_url(http://www.php.net/download-php.php3?csel=br);

    $url[scheme] = http
    $url[host] = www.php.net
    $url[path] = /download-php.php3
    $url[query] = csel=br
    --

    Es geht also um $url[query].

    http://de3.php.net/manual/de/function.parse-url.php

    mfg
    Thomas

    p.s. kann aber sein, dass du mit HTTP_REFERER Probleme bekommst.
    Es muss nicht alles einen Sinn ergeben

    Kommentar


    • #3
      never trust incomeing data!!!

      Kommentar


      • #4
        Original geschrieben von TobiaZ
        never trust incomeing data!!!
        eben.

        und deshalb würde ich lieber gleich die namen der seiten, die aufgerufen werden dürfen, irgendwo ablegen, und dann erst prüfen ob der parameter auch dazu passt, bevor ich include.

        in_array() z.b. ist dafür ganz brauchbar, oder auch ein switch.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar

        Lädt...
        X