Mehrere GET-Parameter

sh0x

Erfahrenes Mitglied
Hallo PHP-Coder :-)

Ich habe auf einer Seite ein Formular, das an PHP_SELF geschickt wird und nutze eine Sortierfunktion, die ebenfalls GET-Parameter an PHP_SELF schickt. Ich brauche jedoch die Parameter von beiden Objekten, damit ich z.B. auch die vom Formular zurückgegebenen Datensätze sortiert ausgeben kann.

Wisst ihr, wie ich das hinbekomme, dass er beide GET-Parameter übergibt?

Zur Zeit ist es so, wenn ich das Formular abschicke, lese ich
Code:
index.php?titel=suchtitel&check_text=1&text=blabla
in der Browser-Adresszeile.

Wenn ich die Sortierfunktion nutze, lese ich
Code:
index.php?sort=Letzte_Aenderung&richtung=ASC

Wie bekomme ich es nun hin, dass er alle GET-Parameter übergibt?
Wo liegt nur mein Denkfehler?

Danke für jegliche Hilfe :)
Liebe Grüße
sh0x
 
Hi,

willst Du vorhandene GET-Parameter bei Verwendung eines Formulars weiterreichen? Schreibe die aktuellen Parameter in versteckte Formularfelder:
PHP:
<form name="bla" method="get" action="<?php echo $_SERVER["PHP_SELF"]; ?>">
    <input type="hidden" name="sort" value="<?php echo $_GET["sort"]; ?>">
    <input type="hidden" name="richtung" value="<?php echo $_GET["richtung"]; ?>">
... usw.

Gruß
.
 
Ist das nicht doppelt gemoppelt, weil ich hier GET-Parameter an POST übergebe? Mit den Hidden-Fields wirds doch ne Post-Übertragung oder?

Ansonsten weiß ich nicht genau, wie ich das machen soll, hab gerade Konzentrationsstörungen. Kannst du mir noch 1-2 Zeilen dazu schreiben, auf dass mir ein Lichtlein aufgeht? :-)
 
Ach, sendest Du das Formular per POST? Ansonsten: Ist doch egal, ob Du die Werte aus $_GET oder $_POST holst, hauptsache, sie sind da. ;) (kann allerdings auch sein, dass ich die Frage falsch verstanden habe).

Gruß
.
 
Ihr habt mich glaube ich nicht richtig verstanden.


Ich habe ein Formular. Diese Formular kann man abschicken und PHP_SELF wird aufgerufen. Dabei werden Parameter per GET weitergereicht.

In dem Formular sind Pfeile nach oben und unten zum sortieren der Ergebnisse. Beim Klick darauf muss auch PHP_SELF aufgerufen werden, damit die Ergebnisse von PHP sortiert werden können.

Also rufe ich 2 mal im Formular PHP_SELF auf. Einmal mittels des Submit-Buttons und einmal mit den Hyperlinks, die auf den Pfeilen sind.

Ich brauche jedoch die GET-Parameter beider Aufrufe. Weil ich nämlich die ausgegebenen Ergebnisse auch gerne sortieren möchte.

Ist das möglich?
 
@Gumbo: hätt ich den gekannt, hätte ich mir viel Arbeit ersparen können. ^^

@sh0x: Du kannst entweder das Formular abschicken, oder einen Hyperlink mit Parametern anklicken. Soll bei einem Klick auf einen der Sortieren-Buttons das Formular ebenfalls abgeschickt werden? In diesem Fall würde ich mit mehreren Inputs vom Typ "submit" arbeiten, und mit PHP abfragen, welcher verwendet wurde. (Die Alternative JavaScript würde ich nicht empfehlen).

Gruß
.
 
Naja, es ist so.

Der Benutzer öffnet die Seite und es werden alle PDF-Dateien eines Verzeichnis aufgelistet. Hier kann man in beliebigen Spalten (Dateiname, Pfad, Dateigröße) auf "Sortieren" klicken und die Einträge werden sortiert.
Oben kann man in einem Formular Suchkriterien eingeben, nach denen die Einträge gefiltert werden. Man kann sich zum Beispiel nur die PDFs ausgeben lassen, die mit "abc" anfangen. Ich möchte jetzt, dass ich mein Sortieren auch auf das Ergebnis anwenden kann.

Da bei der Anzeige des gefilterten Ergebnis aber schon GET-Parameter in der Adresszeile stehen - nämlich die Suchkriterien - gibt es Fehler, wenn ich nun auf Sortieren klicke, da die Get-Parameter vom Sortieren (sortierrichtung=asc, sortierspalte=dateiname) nicht an die der Suchfunktion angehängt werde sondern sie ersetzen.
Er zeigt also ein zwar sortiertes Listing, aber von allen Dateien und nicht nur von den gefilterten.

Habt ihr verstande, wie ich das meine? Ich finde es nicht leicht zu erklären. Ist es nun besser, das mit GET oder POST oder mit Hilfe von Javascript zu machen? Bitte erklärt mir dann aber, wie es mit GET geht, weil bei mir hängt er die Parameter nicht dahinter sondern ersetzt sie. Und dann sind logischerweise die Suchfilter-Parameter nicht mehr existent und alle Einträge werden angezeigt.

Ich bin für jedwede Hilfe sehr dankbar!
 
Hi,

naja, genau das machen mein erster und Gumbos Vorschlag: Wenn Du die aktuellen Parameter in Formularfelder schreibst, werden sie bei einem Submit mitgesendet. Wenn Du das Formular per POST verschickst, lies die Daten zum Sortieren einfach per $_REQUEST aus, oder mach eine Fallunterscheidung, je nachdem, ob das Formular abgesendet wurde.

Gruß
.
 
Zurück