if-Abfrage-Problem
greg
- php
Hi zusammen,
ich habe folgende Frage:
Warum klappt diese if-Abfrage nicht und was muss ich verändern?
if ($kls != 5 OR $kls != 6)
Egal ob $kls 5 oder 7 ist, es wird der if-Teil ausgeführt.
MfG
Hallo,
if ($kls != 5 OR $kls != 6)
Egal ob $kls 5 oder 7 ist, es wird der if-Teil ausgeführt.
Natürlich: Egal welchen Wert $kls wirklich hat, es kann nie gleichzeitig 5 und 6 sein. Mindestens eine der beiden "ungleich"-Bedingungen trifft also immer zu, die ODER-Verknüpfung ergibt damit immer true.
Ich kenne deinen Kontext nicht und weiß nicht, was du eigentlich erreichen wolltest, aber sinnvoll wird die bfrage entweder mit
if ($kls==5 OR $kls==6)
oder
if ($kls!=5 AND $kls!=6)
Im ersten Fall trifft die Bedingung zu, wenn $kls gleich 5 oder gleich 6 ist, im zweiten Fall dann, wenn $kls weder 5 noch 6 ist (nicht 5 und nicht 6).
Ciao,
Martin
Hi,
Warum klappt diese if-Abfrage nicht und was muss ich verändern?
if ($kls != 5 OR $kls != 6)
Egal ob $kls 5 oder 7 ist, es wird der if-Teil ausgeführt.
natürlich, denn in beiden Fällen ist der Wert entweder nicht 5 oder nicht 6. Oder kennst Du eine Zahl, die sowohl 5 als auch 6 ist?[1]
Cheatah
[1] Von 42 abgesehen, versteht sich.
hallo,
Warum klappt diese if-Abfrage nicht und was muss ich verändern?
if ($kls != 5 OR $kls != 6)
Egal ob $kls 5 oder 7 ist, es wird der if-Teil ausgeführt.
wenn $kls == 5 folgt: $kls!= 6 WAHR -> bedingung trifft zu; abfrage wird ausgeführt
wenn $kls == 7 folgt: $kls!= 5 WAHR und $kls!= 6 WAHR -> bedingung trifft zu; abfrage wird ausgeführt
versuchs mal mit AND
grüsse aus Berlin..
tufi