Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 11 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 09.02.07
Prihlásený: 26.01.15
Príspevky: 257
Témy: 20
Príspevok NapísalOffline : 03.04.2008 10:30

Prosim pomozte mi s nasledujucim, Stanley tu niekedy prednedavnom uviedol funckiu, ktore moze pomoct pri hodnote pola vo formulari. Stenley tam pouzil kratky zapis IF/ELSE, ja som si to troska pomenil, ale som strateny, tak mi pomozte, tu je kod:

Kód:
function get_value($var, $sqlQueryName, $sqlVar)
  {
  global ${$var}, $sqlData, ${$sqlQueryName};
  return (isset($_POST['firstName'])) ? "Form" : ($sqlData == false) ? ${$sqlQueryName}[$sqlVar] : '';
  /*
  if (isset($_POST['firstName'])) return "Form";
  else if ($sqlData) return ${$sqlQueryName}[$sqlVar];
  else return '';
  */
  }


Ono problem je v tom, ze pri dlhsom zapise IF/ELSE co je okomentovane vyssie, vsetko bezi ako ma, pri kratkom zapise mi nikdy nevrati retazec "Form" i v pripade, ze $sqlData=true a forma bola odoslana!
Neviem si rady. Vzdy mi vracia ${$sqlQueryName}[$sqlVar].
Poradte, lebo uz som v koncoch.


Offline

Skúsený užívateľ
Skúsený užívateľ
Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

Registrovaný: 24.01.08
Prihlásený: 13.09.17
Príspevky: 14572
Témy: 66
Bydlisko: Žilina
Príspevok NapísalOffline : 03.04.2008 10:33

to, ze stenley to tak pouziva, neznamena to, ze je to snad globalne najlepsie riesenie. v prvom rade treba, aby sa v tom vyznal samotny programator, nemyslis ? mas specialny dovod, preco musis pouzit len jeho sposob a zakomentovanu cast, ktora ti funguje, proste odstrcis na bok ?







_________________
C#, PHP, ...
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 09.02.07
Prihlásený: 26.01.15
Príspevky: 257
Témy: 20
Príspevok Napísal autor témyOffline : 03.04.2008 10:57

Mna vobec nezaujima co Stenley pouziva, proste ma to zaujalo, lebo sa mi to zdalo celkom rozumne a jednoduchy zapis.
Ok, ide o to, ze pri jednoduchej podmienke sa oplati pouzivat tieto ako som sa docital Ternarne operatory. Je to si myslim prehladnejsie, cim vsak narasta zlozitost podmienok, uz je v tom chaoss aspon pre mna a oplati sa pouzivat klasicky sposob IF/ELSE.

Ano, mas pravdu, hlavne by sa v tom mal vyznat programator.

Inak uz som to poriesil, chybali tam zatvorky. Napr.

Kód:
return (isset($_POST['firstName'])) ? "Form" : ((!$sqlData) ? ${$sqlQueryName}[$sqlVar] : '');


Offline

Správca fóra
Správca fóra
Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 03.04.2008 15:29

len pre uplnost, samotne (jednoduche) podmienky, podla ktorych sa vyrazy vyhodnocuju, nemusia byt (v pripade podmienenych operatorov) v zatvorke, je to potom prehladnejsie a jednoduchsie.

Co sa tyka tvojej upravenej funkcie: na co tam mas ten prvy argument, ked ho v tele funkcie vobec nepouzivas? - dalsi faktor, ktory to cele zneprehladnuje...







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 09.02.07
Prihlásený: 26.01.15
Príspevky: 257
Témy: 20
Príspevok Napísal autor témyOffline : 03.04.2008 15:37

Nie nie Stenley, sorry, samozrejme ho pouzivam, len som si nevsimol, ze davam kod, ktorym som to testoval na firstName, samozrejme, ze ta prva premenna bude v $_POST[] - e a teda nebude zbytocna.

Lenze aj tak mi to moc nejde do hlavy preco sa mi, ked som nemal zatvorky vykonala vzdy else cast v mojom prvom prispevku :?


Offline

Užívateľ
Užívateľ
Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

Registrovaný: 26.11.06
Prihlásený: 22.01.24
Príspevky: 4118
Témy: 319
Bydlisko: HE/BA
Príspevok NapísalOffline : 03.04.2008 15:37

ved vsetky 3 pouziva v tele funkcie...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 09.02.07
Prihlásený: 26.01.15
Príspevky: 257
Témy: 20
Príspevok Napísal autor témyOffline : 03.04.2008 15:39

mondzo píše:
Nie nie Stenley, sorry, samozrejme ho pouzivam, len som si nevsimol, ze davam kod, ktorym som to testoval na firstName, samozrejme, ze ta prva premenna bude v $_POST[] - e a teda nebude zbytocna.

Lenze aj tak mi to moc nejde do hlavy preco sa mi, ked som nemal zatvorky vykonala vzdy else cast v mojom prvom prispevku :?


Neda sa mi upravovat moj vlastny prispevok, neviem, co sa deje. Tak ten return bude vyzerat:

Kód:
return (isset($_POST[$var])) ? $_POST[$var] : (($sqlData) ? ${$sqlQueryName}[$sqlVar] : '');


Offline

Správca fóra
Správca fóra
Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 03.04.2008 17:16

odpoved na tvoju "otazku", preco sa vykonala vzdy "else vetva" je jednoducha:
nevykonala sa "else vetva", ako sa domnievas, ale "if vetva" <= phpcko tvoj zapis vyhodnotilo ako (odstranil som niektore nadbytocne zatvorky):
Kód:
return (isset($_POST['firstName']) ? "Form" : $sqlData == false) ? ${$sqlQueryName}[$sqlVar] : '';


A ak pouzivas len zapis typu $_POST[$var], tak nemas dovod nastavit ${$var} ako globalnu premennu - tento zapis mal v povodnej funkcii opodstatnenie, ale u teba to nie je potrebne...







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 09.02.07
Prihlásený: 26.01.15
Príspevky: 257
Témy: 20
Príspevok Napísal autor témyOffline : 04.04.2008 10:22

Dik Stenley, teraz som sa na to pozrel, mas pravdu s tou globalnou premennou a s tou IF/ELSE podmienkou.
Ok, dnes doplnim este validaciu a class formBuilder bude na svete :).


Offline

Správca fóra
Správca fóra
Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 04.04.2008 10:41

potom by si sem mohol hodit cast toho tvojho formBuilderu (ak to nie je tajomstvo), ze ako si riesil napr. select/option pripadne validaciu, lebo teraz tiez na niecom podobnom robim, tak nech sa inspirujem :)







_________________
NTB: Acer Aspire 4820TG 14" | CPU: Intel Core i5 2,53 GHz | VGA: ATI Mobility Radeon HD5650 1GB | RAM: 8GB DDR3 1066 MHz | HDD: 1TB SSD WD BLUE
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 09.02.07
Prihlásený: 26.01.15
Príspevky: 257
Témy: 20
Príspevok Napísal autor témyOffline : 04.04.2008 11:25

Ano, mozem hodit, uvidim, ci to uz dnes dokoncim. Moj formBuilder je jednoduchy, vacsinou na tvorbu foriem, kde data su tahane uz z databazy a klient si ich moze potom upravit a ulozit, ale s mensimi obmenami sa moze vyuzit aj na tvorbu formularov od zaciatku, kde data este pristupne nie su.

urcite to niekde zavesim, ked to bude dokoncene, ze sa na to budete moct pozriet a pripadne mozeme podiskutovat, vylepsit a spolocnymi silami mozno sa dopracovat k celkom slusnej triede :).


Odpovedať na tému [ Príspevkov: 11 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. If else ...

v PHP, ASP

7

550

23.02.2010 20:05

neXor Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. problem s else if

v PHP, ASP

6

389

19.04.2008 13:40

Broko71 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. if a else v C

v Assembler, C, C++, Pascal, Java

8

637

08.02.2009 16:51

Watik Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Else a If vo foreach()

v PHP, ASP

3

436

22.04.2011 19:12

Blackshadow Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Vykoná sa mi aj else časť hoci sa už vykonala if - die mám

v PHP, ASP

11

579

20.10.2010 20:45

davider137 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. ako zmenit podmienku "where" pre listbox cez radiobutton ?

v JavaScript, VBScript, Ajax

0

424

18.02.2011 0:18

10tomi Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. zapis pre IE v externom css subore

v HTML, XHTML, XML, CSS

12

948

19.06.2009 14:39

zaciatocnik Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Aku mechaniku pre najkvalitnejsi zapis+test kvality v r.2010

v Úložné zariadenia

13

1611

21.03.2010 17:42

paulix Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Je potrebne ukoncit podmienku?

v PHP, ASP

3

359

22.08.2010 16:10

php30 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. c++ - Aku mam zadat podmienku?

v Assembler, C, C++, Pascal, Java

1

726

09.05.2007 6:56

POM4R4NC Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Prokurátor navrhol údajným hackerom NBÚ ročnú podmienku

v Novinky

13

574

15.10.2010 22:17

Denco1 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Lenovo, Asus, else?

v Notebooky a netbooky

4

557

11.02.2010 19:03

tralfamadorčan Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. nefunkcna podmienka else

v PHP, ASP

2

465

02.08.2010 21:32

coldak Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Veľmi krátky podpis

v Správy pre vedenie fóra

3

1907

02.04.2007 21:04

JanoF Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Krátky dotazník k hrám

v Krčma

4

530

30.05.2012 10:35

Sparco Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Krátky pohľad na Nokiu N81

v Novinky

15

738

09.08.2007 22:10

Mastros Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra