Hans Huber 49J.: Seite "merken" in PHP?

Hallo,

bin absoluter PHP-Anfänger, aber ich kämpfe mich schon langsam vorwärts. Jetzt habe ich aber ein Problem und weiß nicht weiter wie ich dies lösen soll und kann.

Ich habe auf einer Seite eine Navigation für verschiedene Bereiche und diese Links werden immer auf die gleiche Seite verlinkt. Die Links sehen z.B. so aus: seite1.php?name=test    seite1.php?name=hans

Auf der seite1.php werden verschiedene Aktionen ausgeführt wie z.B. Löschen von Texten, Anlegen von Texten, Kopieren etc... Jetzt möchte ich aber nicht jedesmal die Variable name mit übergeben. Kann man eine Varibale auch irgendwo merken z.B. in einer Session. Aber wie kann ich die jedesmal aktualiseren und dann auch dies Variable verwenden?

Vielleicht kann mir auch einer ein Beispiel geben.

Vielen Dank

Hans Huber 49J.

  1. Vielleicht kann mir auch einer ein Beispiel geben.

    Am Anfang des Scripts session_start();

    if $_GET['name']!='') $_SESSION['name'];
    $page = $_SESSION['name'];

    In $page ist nun immer die Seite gespeichert bis über GET eine neue definiert wird.

    1. Hallo,

      zur Ergänzung:

      auf jeder weiteren Seite, die das Script aufruft oder die Variable $_SESSION['name'] abrufen will, muss ebenfalls session_start(); aufgerufen werden.

      Am Anfang des Scripts session_start();

      if $_GET['name']!='') $_SESSION['name'];
      $page = $_SESSION['name'];

      Ciao
      Heinzelhund

    2. Sehr schön! So wollte ich es haben. Du hast mir nun min. 10 Tage Entwicklungsarbeit gespart.

      Wo soll ich das Geld hinüberweisen?

      Viele Grüße

      Hans Huber 59J.

      Vielleicht kann mir auch einer ein Beispiel geben.

      Am Anfang des Scripts session_start();

      if $_GET['name']!='') $_SESSION['name'];
      $page = $_SESSION['name'];

      In $page ist nun immer die Seite gespeichert bis über GET eine neue definiert wird.

  2. Hallo Hans!

    Ich habe auf einer Seite eine Navigation für verschiedene Bereiche und diese Links werden immer auf die gleiche Seite verlinkt. Die Links sehen z.B. so aus: seite1.php?name=test    seite1.php?name=hans

    Das Ganze könnte man auch anders, nämlich mit mod_rewrite lösen.
    Dann würden deine Links bspw. so aussehen:
    http://example.com/seite/test
    http://example.com/seite/hans

    In einer .htaccess Datei leitest du das ganze jetzt "unsichtbar" per mod_rewrite auf die Datei seite.php um und hängst den Rest als Variable an. Diese kannst du dann in deiner seite.php auswerten.

    Ich finde das Session-System ist nicht mehr "schön", wenn der jeweilige User keine Cookies akzeptiert (und das kann manja nie wissen), und somit die Session-Id an jeden Link angehängt werden muss.

    Gruß Gunther

    1. Mahlzeit,

      Das Ganze könnte man auch anders, nämlich mit mod_rewrite lösen.

      Mit Kanonen auf Spatzen schießen? Außerdem braucht man dafür entsprechende Zugriffsrecht auf den Apachen, während man bei der Lösung per SESSION lediglich PHP nutzt.

      Dann würden deine Links bspw. so aussehen:
      http://example.com/seite/test
      http://example.com/seite/hans

      Ich darf Hans Huber 49J. zitieren?

      Jetzt möchte ich aber nicht jedesmal die Variable name mit übergeben.

      Wie genau möchtest Du diese Anforderung mit Deinem Vorschlag umsetzen? ;-)

      MfG,
      EKKi

      --
      sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
      1. Hi Ekki!

        Das Ganze könnte man auch anders, nämlich mit mod_rewrite lösen.

        Mit Kanonen auf Spatzen schießen?

        Na ja, erstens ist es eine recht kleine Kanone, und zweitens kann gerade für Anfänger die Session-Variante sehr "tückisch" sein.

        Außerdem braucht man dafür entsprechende Zugriffsrecht auf den Apachen, während man bei der Lösung per SESSION lediglich PHP nutzt.

        Da hast du natürlich vollkommen recht. Wenn das nicht bekannt sein sollte, dürfte man aber wohl soviel SELF voraussetzen, dass jemand dann die Forumssuche und/ oder Google & Co. bemüht.

        Dann würden deine Links bspw. so aussehen:
        http://example.com/seite/test
        http://example.com/seite/hans

        Ich darf Hans Huber 49J. zitieren?

        aber immer ;-)

        Jetzt möchte ich aber nicht jedesmal die Variable name mit übergeben.

        Wie genau möchtest Du diese Anforderung mit Deinem Vorschlag umsetzen? ;-)

        Ich habe den Satz (stillschweigend) mal als "Jetzt möchte ich aber nicht jedesmal die Variable name als GET-Parameter mit übergeben." interpretiert.

        Mir ging es eigentlich auch nur darum,_nachdem_splinter ja bereits die eigentliche Antwort gepostet hatte, darauf aufmerksam zu machen, dass es für die Aufgabenstellung auch noch andere Alternativen gibt - that's all.

        Gruß Gunther