Dynamisches Abfragen und mehr?

Hm,neee, verstehst mich glaub ich nicht. Wenn ich als einziges Produkt das Produkt28 auswähle, dann ist es ja innerhalb des Arrays das Element 0. Nach deiner bisherigen Programmierung würde ich 2 dazu zählen und käme zu 2. Wenn ich nun in der DB danach suche, würde er in der Spalte 2 suchen, was falsch wäre. Er sollte bei Produkt28 auch in der Spalte28 suchen, weißt du was ich meine?
 
Achsooo ...
Er wählt eine beliebige Spalte (über das Formular), diese wird aber natürlich in dem Array unabhängig der Spalten in der DB angeordnet.
Das ist dein Problem?

Hm der Wert des Arrays (z.B $var[0] == ein spaltenname) ist ein Spaltenname, oder?
 
Irgendjemand_1 hat gesagt.:
Achsooo ...
Er wählt eine beliebige Spalte (über das Formular), diese wird aber natürlich in dem Array unabhängig der Spalten in der DB angeordnet.
Das ist dein Problem?

Hm der Wert des Arrays (z.B $var[0] == ein spaltenname) ist ein Spaltenname, oder?


Äähhhh.......nein nicht ganz. Die Werte, die dem Benutzer in dem Auswahlfeld zur Verfügung stehen entsprechen Datensätzen in der DB.
Beispiel: Ich wähle Produkt1, Produkt15 und Produkt30 aus.

Dann habe ich in dem Array:
element[0]=Produkt1
element[1]=Produkt15
element[2]=Produkt30

In der Datenbank entsprechen die Werte jedoch Datensätze. Jeder Datensatz ist nur in einer Spalte wieder zu finden. Oh Gott ist das kompliziert, entschuldige bitte.

Produkt1 steht in der DB nur in Spalte1.
Produkt15 steht in der DB nur in Spalte15.
Produkt30 steht in der DB nur in Spalte30.

Hast du es nun verstanden?
 
Ja. Demnach kann Produkt 15 im Array auch 2 oder auch 23 sein. So, wie's halt ausgewählt ist.

Idee: Gib jeder option, die man auswählen kann als value die Nummer mit.
Dann das so umbaun:
PHP:
foreach ($_POST['selectsearch'] as $value) {
  $var[$value] = $_POST['selectsearch'][$value];
  echo "<br><br>Variable aus dem Array ist/sind: ".$var[$value];
  echo "<br>";
}
Ungetestet, weiß nicht, ob das klappt.
 
Hm, ich probiers gerade mal aus. Aber dann habe ich doch nicht soviel davon, oder?
Oder soll dein Beispiel verdeutlichen, dass ich jedem Wert sozusagen die entsprechende Spalte der DB zuordne?
Ich blick bei deinem Beispiel nich so 100%ig durch, aber ich versuchs trotzdem ;)
 
Hmmmm.....sach ma: ich kann doch auf die einzelnen Werte des Arrays zugreifen. Was wäre denn, wenn ich mittels switch...case pro "Fall" eine sql-Anweisung schreibe? Wäre vielleicht umständlich, aber ich muss ja in jedem der 34 einzelnen, zufällig gewählten Fälle sagen, was ich mit der DB machen soll, oder?
Sollte das vielleicht dein Beispiel auch ausdrücken?
 
Ja du sollst jeder option, die man auswählen kann den Wert (also value="") zuweisen, der dem in der Datenbank entspricht.

Mit der foreach-Schleife gehst du dann das $_POST-Array durch (ist halt langsamer als die for-Schleife, aber hier ist es halt praktischer, die foreach zu nehmen, da man die indizes nicht kennt) und weist der $var den Wert zu.

edit: zu deinem letzten Post weiß ich nicht wirklich, was du meinst ;)
 
Zurück