[ 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 | 20

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 | 66
Bydlisko: Žilina

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 | 20
Napísal autor témyOffline : 03.04.2008 10:57 | Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

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 | 51
Bydlisko: Bratislava

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 | 20
Napísal autor témyOffline : 03.04.2008 15:37 | Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

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ý: 09.10.24
Príspevky: 4118
Témy: 319 | 319
Bydlisko: HE/BA

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 | 20
Napísal autor témyOffline : 03.04.2008 15:39 | Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

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 | 51
Bydlisko: Bratislava

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 | 20
Napísal autor témyOffline : 04.04.2008 10:22 | Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

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 | 51
Bydlisko: Bratislava

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 | 20
Napísal autor témyOffline : 04.04.2008 11:25 | Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE

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 :).


 [ Príspevkov: 11 ] 


Kratky zapis pre IF/ELSE podmienku - NEFUNGUJE



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

583

23.02.2010 20:05

neXor

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

problem s else if

v PHP, ASP

6

422

19.04.2008 13:40

Broko71

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

Else a If vo foreach()

v PHP, ASP

3

468

22.04.2011 19:12

Blackshadow

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

if a else v C

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

8

676

08.02.2009 16:51

Watik

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

620

20.10.2010 20:45

davider137

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

455

18.02.2011 0:18

10tomi

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

994

19.06.2009 14:39

zaciatocnik

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

1645

21.03.2010 17:42

paulix

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

Je potrebne ukoncit podmienku?

v PHP, ASP

3

382

22.08.2010 16:10

php30

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

c++ - Aku mam zadat podmienku?

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

1

758

09.05.2007 6:56

POM4R4NC

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

606

15.10.2010 22:17

Denco1

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

nefunkcna podmienka else

v PHP, ASP

2

502

02.08.2010 21:32

coldak

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

Lenovo, Asus, else?

v Notebooky a netbooky

4

598

11.02.2010 19:03

tralfamadorčan

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

2029

02.04.2007 21:04

JanoF

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

Krátky dotazník k hrám

v Krčma

4

574

30.05.2012 10:35

Sparco

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

Krátky pohľad na Nokiu N81

v Novinky

15

775

09.08.2007 22:10

Mastros



© 2005 - 2025 PCforum, edited by JanoF