Problem mit zwei Bedingungen in if-elseif-Funktion

qsrs

Erfahrenes Mitglied
Hallo,

ich habe in einer if-Anweisung 1 Bedingung. Wenn diese erfüllt wird, soll eine Anweisung ausgeführt werden und wenn nicht, soll eine elseif-Anweisung ausgeführt werden welche voraussetzt, dass zwei Bedingungen erfüllt werden müssen. Jetzt ist es so, dass, obwohl beide Anweisungen erfüllt werden, trotzdem immer Anweisung 1 ausgeführt wird:
PHP:
 if (!empty ($user_group)) {
//Anweisung 1
}
elseif ((!empty ($user_group)) && (!empty ($to))) {
//Anweisung 2
}
Ich verstehe nicht warum Anweisung 1 ausgeführt wird, wenn doch beide Bedingungen in elseif erfüllt werden.

Danke für Antworten.
 
Das Problem ist die Reihenfolge.
Du checkst ob $user_group nicht leer ist. Wenn das zutrifft wird was gemacht.
Wenn das nicht zutrifft checkst Du nochmal ob $user_group nicht leer ist und zusaetzlich ob $to nicht leer ist.
Das Problem ist, dass dieses elseif nur zur Geltung kommt wenn $user_group leer ist.
Dreh es mal um, also so:
PHP:
if ((!empty ($user_group)) && (!empty ($to))) {
//Anweisung 1
}
elseif (!empty ($user_group)) {
//Anweisung 2
}
 
Sorry. Der Gedanke dazu ist mir gerade auch gekommen und ich habe es gerade ausprobiert. Hat funktioniert. War wohl etwas zu schnell mit meinem Thread.

Trotzdem danke ich dir.
 
Zurück