Hallo zusammen
ich habe (glaube ich zumindest) ein relativ simples Problem, aber irgendwie stehe ich gerade auf dem Schlauch und komme selbst noch mehr weiter (ich weiss auch nicht mehr nach was suchen bei Google )
Zu meinem Problem: Ich möchte eine Tabelle aus der DB auslesen. Es gibt 2 Bedingungen ($unity und $user). Wenn die Variablen nicht leer sind, soll nur nach genau diesen Werten gesucht werden (WHERE user = $user AND unity = $unity). Wenn jetzt aber $user leer ist, dann soll es keine Einschränkung geben (also wenn $user leer, dann WHERE unity = $unity).
Momentan sieht mein Code so aus:
Naja jetzt bei 2 Variablen geht es ja noch. Aber wenn ich dann 3 oder 4 Parameter habe, wird es einfach extrem unübersichtlich.
Ich habe mir überlegt es mit Cases zu lösen ( http://stackoverflow.com/questions/...when-or-then-else-end-the-or-is-not-supported ). Aber irgendwie fand ich die Lösung auch nicht optimal.
Am liebsten hätte ich natürlich soetwas
Bei den Kommentaren würde :user so ersetzt (wenn $user == ''), dass "user = :user" immer TRUE ist und damit keine Rolle auf die Ausgabe.
Wie würdet ihr mir empfehlen dieses Problem zu lösen?
Ich danke euch schon mals im Voraus für eure Hilfe.
Gruss
stewue
PS: Ich hoffe mal im Code selbst ist kein Fehler, da der Original-Code noch wesentlich länger ist, habe ich versucht mein Problem kompakt zusammenzufassen
ich habe (glaube ich zumindest) ein relativ simples Problem, aber irgendwie stehe ich gerade auf dem Schlauch und komme selbst noch mehr weiter (ich weiss auch nicht mehr nach was suchen bei Google )
Zu meinem Problem: Ich möchte eine Tabelle aus der DB auslesen. Es gibt 2 Bedingungen ($unity und $user). Wenn die Variablen nicht leer sind, soll nur nach genau diesen Werten gesucht werden (WHERE user = $user AND unity = $unity). Wenn jetzt aber $user leer ist, dann soll es keine Einschränkung geben (also wenn $user leer, dann WHERE unity = $unity).
Momentan sieht mein Code so aus:
Naja jetzt bei 2 Variablen geht es ja noch. Aber wenn ich dann 3 oder 4 Parameter habe, wird es einfach extrem unübersichtlich.
Ich habe mir überlegt es mit Cases zu lösen ( http://stackoverflow.com/questions/...when-or-then-else-end-the-or-is-not-supported ). Aber irgendwie fand ich die Lösung auch nicht optimal.
Am liebsten hätte ich natürlich soetwas
Bei den Kommentaren würde :user so ersetzt (wenn $user == ''), dass "user = :user" immer TRUE ist und damit keine Rolle auf die Ausgabe.
Wie würdet ihr mir empfehlen dieses Problem zu lösen?
Ich danke euch schon mals im Voraus für eure Hilfe.
Gruss
stewue
PS: Ich hoffe mal im Code selbst ist kein Fehler, da der Original-Code noch wesentlich länger ist, habe ich versucht mein Problem kompakt zusammenzufassen