menne: zurückleiten

Hallo,

ich benötige bei meinen Seiten eine Rückleitung von einem Formular, das über einen Link aufgerufen wird.

Welche Möglichkeiten gibt es da?
Welche sind am verlässlichsten, welche beachten GET-Parameter etc.?
Wäre es sinnvoll an die jeweiligen Link, die das Formular aufrufen eine URL anzuhängen, die der Redirect-URL entpspricht?

Gruß

  1. Hallo menne.

    ich benötige bei meinen Seiten eine Rückleitung von einem Formular, das über einen Link aufgerufen wird.

    Was meinst du genau?
    Ein Script lässt sich durch action="<?php print $_SERVER['PHP_SELF']; ?>" selbst aufrufen.

    Aus einem php-Script weiterleiten kannst du auch, insofern zuvor noch keine Daten ausgegeben wurden.

      
      
    <?php  
    [...] // dein Code  
    header('HTTP/1.1 303 See Other');  
    header('Location: http://example.org');  
    ?>  
    
    

    MfG, Kungschu.

    --
    The computer is not willing? The bug is well hidden? The release is tomorrow?
    1. Hallo,

      ja das zurückleiten mein ich, es erfolgt auch keine Ausgabe in dem Fall.

      Ich mein nur, die Referrer-Variable wird ja nicht immer mitgeliefert und beachtet glaube ich keine GET-Parameter, deswegen wollte ich nach Möglichkeiten fragen, wo man sich vielleicht nicht auf so eine Referre-Varibale verlassen muss, die nicht in jedem Fall gesetzt wird.

      Was könnte ich da diesen Links anhängen um dann später mit header() zurückzuleiten?

      Gruß

    2. Hi,

      Ein Script lässt sich durch action="<?php print $_SERVER['PHP_SELF']; ?>" selbst aufrufen.

      Beachte: $_SERVER['PHP_SELF'] ist vom User manipulierbar. Die ungeprüfte Ausgabe ist deswegen ein Sicherheitsloch.

      Ein action="" erfüllt den gleichen Zweck - ohne Sicherheitsloch.

      Gruß, Cybaer

      --
      Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
      1. Hi,

        und welche Variable dann nicht?

        Oder wie soll ich sonst die URL anhängen? Doch nciht von Hand?

        Gruß

        1. Hi,

          und welche Variable dann nicht?

          $_SERVER['SCRIPT_NAME']
          Aber darüber ist sich leider kaum jemand bewusst.

          freundliche Grüße
          Ingo

          1. Hallo,

            Danke.

            Nur wenn ich dieser Variable dann noch die GET-Parameter der Seite korrekt anhänge, dann funktioniert das nichtmher korrekt.

            Ich meine, wenn ich eine Seite
            index.php?var=hallo&zar=ende
            aufrufe und von dieser dann auf den link klick, dem die herkunft mitgangehängt werden soll
            also
            ziel.php?url=index.php?var=hallo&zar=ende

            und ich möchte dann von ziel.php wieder nach $_GET['url'] zurückleite, gehn die Parameter flöten...

            Hat jemand ne Idee?

            Gruß

            1. Hi,

              Hat jemand ne Idee?

              In diesem Fall muß das "?" (wie auch die restlichen Zeichen, die eigentlich nicht in den URL gehören) entsprechend codiert werden. Wie *immer* bei URL-Parametern!

              Gruß, Cybaer

              --
              Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
              1. Hallo,

                also was muss ich dann da drüberlaufen lassen?

                htmlentities oder htmlspecialchars?

                Gruß

                1. Hi,

                  also was muss ich dann da drüberlaufen lassen?

                  http://php.net/urlencode für die normale Kodierung.

                  htmlentities oder htmlspecialchars?

                  Das auch, wenn sich entsprechende HTML-Sonderzeichen im URL befinden (s. Anmerkungen auf der urlencode-Doku).

                  Gruß, Cybaer

                  --
                  Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!
  2. Hi,

    Wäre es sinnvoll an die jeweiligen Link, die das Formular aufrufen eine URL anzuhängen, die der Redirect-URL entpspricht?

    Ja.

    Gruß, Cybaer

    --
    Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!