LSpreee: Variablenübergabe im Link, Spezialfall

Hallo Forum
alles klar, normalerweise geht es so.

href:"./wasweiss/ich.php?var=23"
usw.
bei einem fertigen skript was ich hier habe sieht es jedoch so aus, dass kein Variblenname angegeben ist, also als wenn nur die 23 da steht und nicht var=.
wie geht php mit sowas um? ich finde auch gar nicht die stelle, an der diese Variable ausgelesen wird. das skript funktioniert aber.
komisch.

ich bin auf dieses Problem gestoßen, weil ich eine zweite Variable in den Link packen wollte mit &var2=4, und wenn ich dies mache, geht die erste nicht mehr. Das möchte ich beheben, daher die grundlegende Frage, wie php mit Variablen in Links umgeht, wenn sie keinen Namen haben, sondern nur ein Wert.

Vielen Dank.

  1. Hi,

    href:"./wasweiss/ich.php?var=23"
    usw.
    bei einem fertigen skript was ich hier habe sieht es jedoch so aus, dass kein Variblenname angegeben ist, also als wenn nur die 23 da steht und nicht var=.
    wie geht php mit sowas um?

    print_r($_SERVER); gibt dir Aufschluss, welche Daten bei einem Request alle beim Server "ankommen".
    REQUEST_URI und QUERY_STRING duerften am interessantesten sein.

    ich bin auf dieses Problem gestoßen, weil ich eine zweite Variable in den Link packen wollte mit &var2=4, und wenn ich dies mache, geht die erste nicht mehr.

    Prinzipbedingt, wenn das Script nur ?xy erwartet.

    Das möchte ich beheben, daher die grundlegende Frage, wie php mit Variablen in Links umgeht, wenn sie keinen Namen haben, sondern nur ein Wert.

    Erst mal gibt es natuerlich gar keine "Variablen" in Links, sondern hoechstens Parameter.

    Wenn nicht das uebliche Schema parametername=parameterwert uebergeben wird, kann PHP daraus auch keine Eintraege im $_GET-Array machen.
    Du wirst also die Stelle, an der das Script ?xy auswertet, entsprechend "auf $_GET" umschreiben muessen. (Oder die Behandlung des Querystrings anderweitig anpassen.)

    MfG ChrisB

    --
    „This is the author's opinion, not necessarily that of Starbucks.“
    1. Hi,

      Wenn nicht das uebliche Schema parametername=parameterwert uebergeben wird, kann PHP daraus auch keine Eintraege im $_GET-Array machen.

      das stimmt nicht ganz; bei ?24 trägt PHP $_GET['24'] ohne Wert ein.

      freundliche Grüße
      Ingo

      1. das stimmt nicht ganz; bei ?24 trägt PHP $_GET['24'] ohne Wert ein.

        Hallo und Danke auch Dir.
        Und was macht $HTTP_GET_VARS dann daraus? Weil dieser Befehl wird hier verwendet.

        Wenn ich das richtig verstanden habe, ist $HTTP_GET_VARS verpönt, weil da der User Variablen einschleusen kann. Besser ist es über $_GET['par.name']. Ist das korrekt?

        1. Hi,

          Wenn ich das richtig verstanden habe, ist $HTTP_GET_VARS verpönt, weil da der User Variablen einschleusen kann. Besser ist es über $_GET['par.name']. Ist das korrekt?

          nein (der Grund ist, dass dieser Befehl veraltet ist) und ja, man sollte das $_GET-Array abfragen, sofern man es nicht eine Uralt-Installation von PHP zu tun hat.

          freundliche Grüße
          Ingo

    2. Wenn nicht das uebliche Schema parametername=parameterwert uebergeben wird, kann PHP daraus auch keine Eintraege im $_GET-Array machen.
      Du wirst also die Stelle, an der das Script ?xy auswertet, entsprechend "auf $_GET" umschreiben muessen. (Oder die Behandlung des Querystrings anderweitig anpassen.)

      Vielen Dank, für die Tipps. Also ich möchte dann gerne die Stelle im Skript ändern und auf $_Get umschreiben. Hast Du eine Idee, wie ich die Stelle im Skript finde? Eigentlich kenne ich mich ganz gut aus, aber ich konnte es nicht finden. Ich dachte ich suche nach GET aber ich weiß nicht, wie die Sache programmiert ist, wenn der, wie Du selbst sagst, ?xy erwartet erwartet, ohne Parametername.

      Danke nochmal

  2. OK, hab da was gefunden. Es geht übrigens um eine Bildergalerie.
    Es geht um den Vor und Zurück Button, der die Bilderzahl übergibt, eben ohne Parametername. Da möchte ich den Galerienamen noch durchschleifen.

    Das skript wertet bislang die Bildzahl mit irgendwas mit
    $_SERVER['QUERY_STRING']
    aus. Das kannte ich noch nicht. Werde da jetzt mal was drüber nachlesen. Vielleicht schaffe ich es ja, daraus eine $_GET-Sache zu machen.

  3. Alles klar, habe es geschafft.
    Danke für die Hilfe.