Obsah fóra
PravidláRegistrovaťPrihlásenie




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

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 04.08.06
Prihlásený: 30.12.13
Príspevky: 69
Témy: 10
Príspevok NapísalOffline : 12.12.2007 0:52

Mam taky mensi problem. Pri registracii potrebujem aby uzivatel zadal den mesiac a rok narodenia. Pri mesiaci to neni problem, pretoze je to 12 poloziek a navyse textove. Pri dni to este tiez neni problem, ale uz napriklad pri roku narodenia vypisovat 100krat <option>1900</option> je dost pracne a zabera znacnu cast kodu...neda sa to nejako inac spravit? napriklad oznacit len krajne body? napr.: od roku 1900 po rok 2007? ma to byt cisto iba cislo.







_________________
>» Jª¥rrº! «<

Life is too short,
don't stress every day!
Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 28.04.07
Prihlásený: 03.11.09
Príspevky: 133
Témy: 1
Príspevok NapísalOffline : 12.12.2007 7:35

Vygeneruj položky skriptom.


Offline

Správca fóra
Správca fóra
Jak na <select>?

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 12.12.2007 8:24

ak poznas php alebo podobny jazyk, mozes si to cez cyklus pekne vygenerovat, v najhorsom pripade cez js, ale to ti neodporucam...

Jednoduchy cyklus na vygenerovanie poloziek selectu od r. 1900 do 2007:
Kód:
for($i=1900; $i<=2007; $i++)
{
   echo '<option value="'.$i.'">'.$i.'</option>';
}







_________________
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

Skúsený užívateľ
Skúsený užívateľ
Jak na <select>?

Registrovaný: 30.05.06
Prihlásený: 08.10.14
Príspevky: 1756
Témy: 35
Bydlisko: BA - WESTSIDE
Príspevok NapísalOffline : 12.12.2007 8:55

Alebo sprav input typu text a vstup kontroluj regulárnym výrazom (btw, aj tak to budeš musieť spraviť, lebo select ťa pred poslaním iných dát ako ty chceš neochráni).







_________________
A. S. Tanenbaum píše:
The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.
Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 04.08.06
Prihlásený: 30.12.13
Príspevky: 69
Témy: 10
Príspevok Napísal autor témyOffline : 12.12.2007 12:49

omg, nakoniec je to take jednoduche, stacilo len trosku zakombinovat. fakt ma to nenapadlo :oops: Dakujem stenley. :)

btw: p360t jak si to myslel, ze select ma pred poslanim inych dat neochrani? vsak pri selecte si uzivatel mze vybrat len to z coho mu ponuknem.







_________________
>» Jª¥rrº! «<

Life is too short,
don't stress every day!
Offline

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

Registrovaný: 17.11.06
Prihlásený: 31.12.07
Príspevky: 677
Témy: 9
Príspevok NapísalOffline : 12.12.2007 13:28

no to sa dosť mýliš.. všetky veci z formu sa posielajú ako get (prepíšem v url) alebo post (prepíšem v hlavičke)
Takže ak mi ty dáš možnosť vybrať čísla od 1900 do 2007 tak ja si to jednoducho pri odoslaní odchytím hlavičku a zmením to tam (prípadne ešte pred odostaním cez js injection) alebo prinajhoršiom lamer riešení si tvoju stránku uložím a option si prepíšem na svoje hodnoty

//edit:
p360t píše:
Alebo sprav input typu text a vstup kontroluj regulárnym výrazom (btw, aj tak to budeš musieť spraviť, lebo select ťa pred poslaním iných dát ako ty chceš neochráni).
s regulárnymi opatrne, dosť spomalujú (aj keď sa to nezdá) Raz som robil jeden pokus cez podmienky sa skript vykonal omnoho rýchlejšie ako cez regulárne. Navyše, rok nie je taká vec čo by si musel cez regulárne overovať, stačí overiť či je číslo a či je z nejakého intervalu. Nič viac netreba


Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 04.08.06
Prihlásený: 30.12.13
Príspevky: 69
Témy: 10
Príspevok Napísal autor témyOffline : 12.12.2007 13:38

heh...no nad takymto odoslanim som nerozmyslal. Predpokladam ze by sa to dalo opat nejakym cyklom, len namiesto ponukania moznosti, by kontroloval rozmedzie odpovede a umiestnit ho do kodu kde zyskava odpovede z <FORM> </FORM>.
Jak by ste to spravili vy?







_________________
>» Jª¥rrº! «<

Life is too short,
don't stress every day!
Offline

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

Registrovaný: 17.11.06
Prihlásený: 31.12.07
Príspevky: 677
Témy: 9
Príspevok NapísalOffline : 12.12.2007 13:53

Kód:
<?php ((is_numeric($_POST["rok"])) && ($_POST["rok"]<=2007)  && ($_POST["rok"]>=1900)) ? $vysledok=true : $vysledok=false   ?>


potom si na základe premennej vysledok určíš čo má ďalej robiť


Offline

Správca fóra
Správca fóra
Jak na <select>?

Registrovaný: 27.07.07
Príspevky: 3948
Témy: 51
Bydlisko: Bratislava
Príspevok NapísalOffline : 12.12.2007 14:03

is_numeric() ti zoberie napr. aj desatinne cisla







_________________
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ý: 17.11.06
Prihlásený: 31.12.07
Príspevky: 677
Témy: 9
Príspevok NapísalOffline : 12.12.2007 14:07

tak zaokrúhliť, ja neviem.. som v tomto lama :)
ale cez regulárne by som to určite nieriešil, chodíť s tankom na dážďovky sa mi zdá trochu uletené


Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 04.08.06
Prihlásený: 30.12.13
Príspevky: 69
Témy: 10
Príspevok Napísal autor témyOffline : 12.12.2007 14:52

a co tak takyto kod?
stacilo by to na osetrenie neziaduceho vstupu?
Kód:
 <?php
$spravnost = false;
for ($i= 1900 ; $i <=2007 ; $i++)
  { if ($_POST["rok"] == $i)
       { $spravnost = true}
  }
if ($spravnost == false)
   {echo ('<p> <b> Zadany udaj je nespravny </b> </p>')}
else
   {$rok_nar = $_POST["rok"]}
?>







_________________
>» Jª¥rrº! «<

Life is too short,
don't stress every day!
Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 26.09.07
Prihlásený: 06.06.10
Príspevky: 53
Témy: 7
Bydlisko: Zákopčie, K...
Príspevok NapísalOffline : 12.12.2007 17:10

Sa mi zda ze to nejako komplikujete.. Co takto:
Kód:
<?php
$ok =  ( ( intval($_POST["rok"]) <= 2007)  && ( ( intval($_POST["rok"]) >=1900 ) )  ? true : false;
?>


Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 04.08.06
Prihlásený: 30.12.13
Príspevky: 69
Témy: 10
Príspevok Napísal autor témyOffline : 12.12.2007 17:14

hmmm, ja to nekomplikujem...ja sa len ucim php a trosku ma aj zvadzaju skusenosti z pascalu robit to podla toho :oops:







_________________
>» Jª¥rrº! «<

Life is too short,
don't stress every day!
Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 26.09.07
Prihlásený: 06.06.10
Príspevky: 53
Témy: 7
Bydlisko: Zákopčie, K...
Príspevok NapísalOffline : 12.12.2007 20:35

No ja uz mam za sebou pascal, klasicke C, C++, Delphi, Assembler, Bash, Python, prakticky vsetky webovske jazyky, a teraz frcim na C++ pod windows a uz coskoro sa na mna tesi aj Java.. Okrem toho v praci vyvyjame informacne systemi s webovskym rozhranim v PHP a Javascripte.. Finta je v tom ze ja viem rychlo zabudat.. :)


Offline

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

Registrovaný: 17.11.06
Prihlásený: 31.12.07
Príspevky: 677
Témy: 9
Príspevok NapísalOffline : 12.12.2007 21:15

Ezekiell píše:
No ja uz mam za sebou pascal, klasicke C, C++, Delphi, Assembler, Bash, Python, prakticky vsetky webovske jazyky, a teraz frcim na C++ pod windows a uz coskoro sa na mna tesi aj Java.. Okrem toho v praci vyvyjame informacne systemi s webovskym rozhranim v PHP a Javascripte.. Finta je v tom ze ja viem rychlo zabudat.. :)
keď si taký frajer, mohol si to spraviť aj efektívnejšie. Ja som mu to schválne napísal trošku rozpísane aby pochopil o čo ide. Ten unárny operátor si tam vôbec nemusel dávať
Kód:
<?php
$ok=( ( intval($_POST["rok"]) <= 2007)  && ($_POST["rok"] >=1900 ) );
?>


výsledok podmienky vráti bool hodnotu ktorú priamo priradím, takže ten zvyšok zatým je zbytočný. V druhej časti podmienky nemusí už byť intval, je tam úplne zbytočne lebo ak to nie je číslo tak sa do tej časti podmienky nedostane lebo prvá časť už vráti false a false and true nemôže byť nikdy

;)


Offline

Skúsený užívateľ
Skúsený užívateľ
Jak na <select>?

Registrovaný: 30.05.06
Prihlásený: 08.10.14
Príspevky: 1756
Témy: 35
Bydlisko: BA - WESTSIDE
Príspevok NapísalOffline : 13.12.2007 8:27

Ten regulárny som myslel kompletne na celý dátum, ale je možné, že to je pomalšie. Na druhej strane je otázne, či má stránku, na ktorej mu veľmi pomôže každá ušetrená desatina sekundy...







_________________
A. S. Tanenbaum píše:
The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.
Offline

Užívateľ
Užívateľ
Jak na <select>?

Registrovaný: 26.09.07
Prihlásený: 06.06.10
Príspevky: 53
Témy: 7
Bydlisko: Zákopčie, K...
Príspevok NapísalOffline : 13.12.2007 18:14

No tak ked uz tak intval je funkcia ktora sa pokusi aj znak previest na cislo a nie ktore zistuje ci to je cislo cize musi byt aj na tom druhom mieste pr.:
Kód:
<?php
echo intval(42);                      // 42
echo intval(4.2);                     // 4
echo intval('42');                    // 42
echo intval('+42');                   // 42
echo intval('-42');                   // -42
echo intval(042);                     // 34
echo intval('042');                   // 42
echo intval(1e10);                    // 1410065408
echo intval('1e10');                  // 1
echo intval(0x1A);                    // 26
echo intval(42000000);                // 42000000
echo intval(420000000000000000000);   // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8);                   // 42
echo intval('42', 8);                 // 34
?>


A nie som ziaden frajer.. Sam som pisal ze uz s tych jazykov skoro nic neviem.. Takze sa netreba rozculovat ano? :D


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


Podobné témy

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

v Modifikácie, návody a projekty

21

3077

01.10.2005 15:47

To[m]aS Zobrazenie posledných príspevkov

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

v Modifikácie, návody a projekty

2

2017

11.08.2006 3:31

Jerry19 Zobrazenie posledných príspevkov

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

v Ostatné programy

0

586

26.12.2007 11:46

uai Zobrazenie posledných príspevkov

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

v Notebooky a netbooky

2

2130

12.07.2006 13:41

WLXok Zobrazenie posledných príspevkov

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

v Operačné systémy Microsoft

4

619

16.08.2007 13:34

registracen73 Zobrazenie posledných príspevkov

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

v Ostatné programy

10

1065

25.12.2006 22:13

POM4R4NC Zobrazenie posledných príspevkov

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

v Operačné systémy Microsoft

4

548

12.08.2008 8:11

majky358 Zobrazenie posledných príspevkov

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

v AMD - Advanced Micro Devices

2

910

25.04.2007 18:44

fero182 Zobrazenie posledných príspevkov

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

[ Choď na stránku:Choď na stránku: 1, 2 ]

v Modifikácie, návody a projekty

40

4950

23.03.2008 11:37

"laky" Zobrazenie posledných príspevkov

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

v Redakčné systémy

3

860

23.03.2007 8:22

JanoF Zobrazenie posledných príspevkov

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

v Benchmarky a diagnostické programy

5

838

26.12.2007 14:27

shiro Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Jak promazat větráček?

v ATI/AMD grafické karty

13

1210

24.09.2006 19:08

Spirit Zobrazenie posledných príspevkov

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

v Obchody, reklamácie a právo

4

894

01.10.2008 8:49

Blackshadow Zobrazenie posledných príspevkov

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

v Ostatné

7

629

16.08.2007 23:45

Intelman Zobrazenie posledných príspevkov

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

v Redakčné systémy

5

1049

14.06.2006 17:51

JanoF Zobrazenie posledných príspevkov

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

v Biosy a ladenie výkonu

3

1071

29.12.2006 11:49

Ingenium Deerro 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