Mehrere GET- oder POST-Variablen mit dem gleichen Namen übergeben

dwex

Erfahrenes Mitglied
Hallo Leute,

habe wieder ein Problem.

Ich muss aus einer Liste welche von einer Datenbank generiert wurde mehrere Einträge (über eine Checkbox) markieren und an ein weiteres Script übergeben.

Ich habe mal gesehen wie das ein Programmierer mit GET gemacht hat.
Das ganze hat dann z.B. so ausgesehen:

http://www.irgeneinedomain.de/script.php?id=1&id=5&id=9&id=15

So jetzt ist mein Problem wie kann ich die ID´s dann auslesen - es wird doch immer die vorhergehende ID von der nächsten überschrieben - oder?

Kann mir da jemand weiterhelfen?
Vielen Dank im Voraus!
 
Hi dwex,

Man könnte auch die Checkboxen durchnummerieren, dann würde das so aussehen:

Code:
http://www.irgeneinedomain.de/script...d5=1&id9=0&id=1

Eine Checkbox kann ja entweder angeklickt sein oder nicht, also hat entweder den Wert 1 oder 0. Wenn du die alle gleich nennst, hast du hinterher nur einen Datensatz, wie du bereits beschrieben hast.

Die Variablen aus einem Formular würde ich mich "post" übergeben, und die die normal in einem Link gesetzt wurden mit "get" abfragen.

Also während die Datenbankabfrage gemacht wird eine for-Schleife einbauen mit der Anzahl der Reihen die in dem array drin sind, und die jeweilige zahl dann nach der id als namen angeben.

Am besten noch ein Hiddenfeld, wo die Anzahl der Reihen der Datenbankabfrage drin gespeichert wird.

Gruß di-five
 
machs so:

http://www.domain.de/script.php?id%5B%5D=1&id%5B%5D=5&id%5B%5D=9&id%5B%5D=15

...dann erhältst du über $_GET['id'] einen Array, in dem alle übermittelten Variablen drinnen stehen.
 
Hallo,

zwei Möglichkeiten:

  1. Alles was in der URL nach dem ersten Fragezeichen steht, kann man über $_SERVER['QUERY_STRING'] abfragen und dann auch entsprechend weiterverarbeiten.
  2. Verwende als Name für die Checkboxen jeweils id[]. Dadurch erhältst du automatisch ein Array $_GET['id'], das die Werte der angekreuzten Checkboxen enthält. Besser wäre hier allerdings die Übergabe via POST anstatt GET.

Grüße,
Matthias

edit: Arrr, Sven ist hier... dann kann ich mich ja jetzt wieder anderen Aufgaben widmen ;)
 
Matthias Reitinger hat gesagt.:
edit: Arrr, Sven ist hier... dann kann ich mich ja jetzt wieder anderen Aufgaben widmen ;)

<neugier>Die da wären? :-)</neugier>

Ich hatte ganz überlesen, dass es um Checkboxen geht.... das was ich da gepostet habe, wäre dann das Ergebnis von Mathias' 2.Vorschlag.
 
möglich ist auch per POST
<input type="checkbox" name"bla[]" value="1" />

Achte auf das [] beim Namen und für das auslesen foreach verwenden.
 
Zurück