Autor | Zpráva | ||
---|---|---|---|
Jurko Profil * |
#1 · Zasláno: 16. 6. 2011, 18:54:39
Ahoj
když budu mít proměnou $aaa = false; a budu jí chtít otestovat podmínkou, která z nich bude platit? !empty empty !isset isset Děkuji |
||
dtr Profil * |
#2 · Zasláno: 16. 6. 2011, 18:56:33
druhá a čtvrtá
|
||
DarkMeni Profil |
#3 · Zasláno: 16. 6. 2011, 18:58:08 · Upravil/a: DarkMeni
Když víš na 100% že proměnná bude logická (true nebo false) tak můžeš použít i negaci:
if(!$promenna){ //$Proměnná je nastavena na false }else{ //$Proměnná je nastavena na true } Záleží na tom co chceš testovat. isset testuje jestli proměnná existuje a empty testuje jestli je prázdná ...Kdyžtak první a čtvrtá (prázdná není, obsahuje false) |
||
dtr Profil * |
#4 · Zasláno: 16. 6. 2011, 18:59:20
Jinak já si taky přihřeju polívčičku. Chtěl jsem položit novou otázku, ale jelikož je to taky o podmínkách, tak to vložím sem :)
IDE i PHP na serveru mi hlásí, že toto je syntakticky špatně: if(isset($_POST['do']) && $_POST['do'] == 'save') { // nejaky kod } Co označuje jako špatně, je vyznačeno(tedy vše za &&). Mě se to ale zdá správně, vidíte tam někde chybu? |
||
dtr Profil * |
#5 · Zasláno: 16. 6. 2011, 19:00:07
Vložilo to tam
tak znovu: if(isset($_POST['do']) && $_POST['do'] == 'save') { foreach($_POST as $pst) { echo "$pst<br />"; } } |
||
dtr Profil * |
#6 · Zasláno: 16. 6. 2011, 19:03:13
Tak vložením toho prvního kódu sem mi napovědělo, že je za tím && nějaký zvláštní znak, který asi není tak úplně "validní" mezerou. Proto mi to tady vypsalo a proto php a IDE řvalo. Což je zvláštní, přísahal bych, že jsem tu mezeru dělal normálně mezerníkem, ale už se mi to dnes jednou stalo. Tuto "mezeru" jsem smazal, a už to jede. Ale je to záhada.
//omlouvám se za zneužití cizího příspěvku ;) |
||
Nox Profil |
#7 · Zasláno: 16. 6. 2011, 19:33:05
J, myslim že to tak je, taky se mi to už stalo... myslim že s shift+mezerník
|
||
Jurko Profil * |
#8 · Zasláno: 16. 6. 2011, 20:04:59
DarkMeni:
„Když víš na 100% že proměnná bude logická (true nebo false) tak můžeš použít i negaci:“ To nevím, můj problém je v tom, že mi to píše: Notice: Undefined index: aaa .... v kodu mám if($aaa=='ok') echo "Proběhlo vše úspěšně!"; tak jsem myslel, že když vložím před tu podmínku $aaa = false; tak že to bude ok, hláška sice zmizela ale nevím jestli je to v pořádku... Díky |
||
pcmanik Profil |
#9 · Zasláno: 16. 6. 2011, 20:41:46
Jurko:
Lepsie je definovat prazdnu premmenu, teda $aaa = ""; |
||
DarkMeni Profil |
#10 · Zasláno: 16. 6. 2011, 21:07:49
Jurko:
„Notice: Undefined index: aaa ....“ Netestuješ náhodou proměnnou? Hm... udefined index, to sem viděl jen když jsem měl povolený zobrazování chyb a poznámek a k tomu byla chyba v tom že jsem použil pole s neexistujícím indexem, u nedefinované proměnné jsem dostával hlášky typu undefined variable. A jestli ta proměnná má existovat a zobrazí se ti poznámka když ji nepředefinuješ tak to v pořádku není, nemáš ji náhodou tahat z odeslaného formuláře? (Takové proměnné se tahají podle metody odeslání buď $_GET["promenna"] nebo $_POST["promenna"] a nebo když metodu nevíš tak na obojí platí $_REQUEST["promenna"]) |
||
Časová prodleva: 14 let
|
0