Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Variable aus URL loswerden

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Variable aus URL loswerden

    Hallo mal wieder,

    ich habe da ein Projekt, in dem in einer zentralen Datei index.php verschiedene php-Dateien per include eingebunden werden. Zum Beispiel wird eine Datei neue_user.php eingebunden, welche die neu registrierten User anzeigen soll. In dieser datei werden die neuen User aufgelistet und mit einem Link versehen, dem die User-ID angehängt wird um das Profil des neuen Users aufzurufen.
    PHP-Code:
     echo '<td><a href="index.php?id='.$neue_user[$count]->getU_ID().'">'.$reg_nickname."</a></td>"
    Wenn der Link angeklickt wird erscheint das Userprofil und in der Adresszeile des Browsers der entsprechende Link.
    Code:
    http://server1/1_Entwicklung/FMG/index.php?id=7
    Weiterhin wird eine Datei login.php in die index.php eingebunden. Hat ein User zuerst einen Link in neue_user.php angeklickt und will sich danach einloggen, dann wird zwar das Login-Formular aufgerufen, aber in der Adresszeile des Browsers ist immer noch die angeängte Variable 'id' vorhanden, die bewirkt dass das Profil des vorher betrachteten Users mit angezeigt wird. Wie kann ich diese Variable aus der URL entfernen ?

    Danke für jeden Tipp!
    abrodeck


  • #2
    Wer nicht eingeloggt ist, wird eben auf den Login weitergeleitet.

    Das machst du mit header("Location: login.php");
    "Mein Name ist Lohse, ich kaufe hier ein."

    Kommentar


    • #3
      Weiterhin wird eine Datei login.php in die index.php eingebunden. Hat ein User zuerst einen Link in neue_user.php angeklickt und will sich danach einloggen, dann wird zwar das Login-Formular aufgerufen, aber in der Adresszeile des Browsers ist immer noch die angeängte Variable 'id' vorhanden, die bewirkt dass das Profil des vorher betrachteten Users mit angezeigt wird. Wie kann ich diese Variable aus der URL entfernen ?
      Wenn das passiert, wird es daran liegen, dass du in deinem <form> nur ein action="" stehen hast und nicht ein action="index.php". Dann wäre der Parameter nämlich weg. Gehört sowieso zum besseren Stil
      sigpic

      Kommentar


      • #4
        Danke für den Tipp mit dem Formularaufruf.
        War zwar nicht direkt mein Problem aber es hat mich auf die richtige Spur geführt.

        Ich habe
        PHP-Code:
        action="<?php $_SERVER['PHP_SELF'?>"
        durch
        Code:
        action="index.php"
        ersetzt und nun klappt es.

        Kommentar


        • #5
          War zwar nicht direkt mein Problem aber es hat mich auf die richtige Spur geführt.
          Doch, es war direkt Dein Problem. Bei
          action="<?php $_SERVER['PHP_SELF'] ?>"
          solltest Du mal in den Quellcode sehen.

          Wo auch immer dieses Konstrukt herkommt - es ist der reine Dummfug. Genauso könntest Du schreiben:

          PHP-Code:
          action="<?php class foo {} $a = new foo('Meine Lieblingsfarbe ist rosa'); ?>"
          --

          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


          --

          Kommentar


          • #6
            Danke,
            nun weiss ich was Frank mit
            dass du in deinem <form> nur ein action="" stehen hast
            gemeint hat.

            Kommentar


            • #7
              Leider muss das irgendwo stehen. Weißt Du noch, woher Du dieses Konstrukt hast? Das taucht hier immer wieder mal auf. Ich würde gerne mal wissen, wer das publiziert hat.
              --

              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
              Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


              --

              Kommentar


              • #8
                Kann ich leider nicht mehr sagen, allerdings habe ich es bestimmt nicht aus diesem Forum. Ich muss zu meiner Schande gestehen, dass ich es schon recht lange benutze. Ist mir bisher nur noch nicht aufs Bein gefallen.

                Kommentar

                Lädt...
                X