Hledáš dárek, který neskončí v koši? Nyní 90 % extra kreditů ZDARMA s promo kódem PREKVAPENI90. Zjisti více:
NOVINKA: Staň se datovým analytikem od 0 Kč a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:
Avatar
informatik87
Člen
Avatar
informatik87:8.11.2014 16:36

Zdravím, pořád nemůžu přijít na chybu v podmínce:

if (!empty($parametry[0]) && $parametry[0] != ('nejnovejsi' || 'nejstarsi' || 'nahodne'))
        {
           ...
        }
        else if (!empty($parametry[0]) && $parametry[0] == ('nejnovejsi' || 'nejstarsi' || 'nahodne'))
        {
           ...
        }

Vždy se provede až else if.

 
Odpovědět
8.11.2014 16:36
Avatar
Odpovídá na informatik87
Martin Konečný (pavelco1998):8.11.2014 16:40

Nemůžeš v tý podmínce psát

('neco' || 'neco' || 'neco')

ale

$p = 'neco' || $p = 'neco' || $p = 'neco'

Myslím, že se ve tvém případě provede následovně:

  1. ('nejnovejsi' || 'nejstarsi' || 'nahodne') se vyhodnotí a výsledkem bude true. Z toho vznikne podmínka $parametry[0] != true
  2. $parametry[0] se převede na bool hodnotu (a jelikož něco zřejmě obsahuje, tak to bude true). Z toho vznikne podmínka true != true
Editováno
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
8.11.2014 16:40
Aktuálně připravuji browser RPG, FB stránka - https://www.facebook.com/AlteiraCZ
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.