PHP Centeri avaleht Skriptikogu Küsimuste-vastuste leht Teadete vaatamine ja saatmine Foorum - koht küsimiseks Otsingumootor Siit saad infot meie kohta

Kasutajanimi:  
  Parool: 
  Registreeri!   Unustasid salasõna?

Foorumid Programmeerimine PHP & MySQL integeri kontrollimine
Autor Abi Postitus Abi

patridioot
AhsaaNugis


Postitusi: 63
Tase: 4
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
integeri kontrollimine

selline probleem on, et vormilt tuleb muutuja $_POST['muutuja']. Oleks vaja kontrollida, kas see on integer, või on keegi kogemata suvalisi klajve klõpsind.
on küll olemas selline asi nagu is_int() aga sellega on selline kala, et loogish, postitatud muutujad on vist automaatselt stringid. proovisin ka intval()-ga ****ida aga ei mingit tulemust.
Kudas saab?

Seda postitust on muudetud 1 kord (2003-07-16 15:24:06 mihkel poolt)

___________________________________________________
.... kas tõesti

16.07.2003 12:45:31 Vajutades siia näed kasutaja patridioot profiili

muidumeez
Ignorantia non est
argumentum


Postitusi: 3864
Tase: Administraator
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Kaks asja

1. Funktsioon intval on tegelikult see, mida sa siiski vajad.
2. Loodan, et oli, on ja jääb ka edaspidi kombeks väljendada enda keeleliselt õigelt, vigadeta ja ropendamata

___________________________________________________
An Opinion Is Like An Asshole -- Everybody Has One

16.07.2003 12:54:04 Vajutades siia näed kasutaja muidumeez profiili

tobre
Asjamees


Postitusi: 1393
Tase: 9
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Aga sa võiksid ka teha nii, et mingit muud saasta ei saaks sinna formi sisse kirjutadagi, ainult numbreid.
Koodijupp:
<input name="telefon" id="telefon" type="text" onkeypress="if(event.keyCode<45||event.keyCode>57) event.returnValue = false;">


Tõsi küll, töötab kahjuks ainult IE peal.
/me arvamus läheb kokku muidumeez'i teise punkti arvamusega

___________________________________________________
Tõnis Tobre · MSN  · E-Post

16.07.2003 13:02:45 Vajutades siia näed kasutaja tobre profiili

patridioot
AhsaaNugis


Postitusi: 63
Tase: 4
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: integeri kontrollimine

Tsiteeritud tekst:
1. Funktsioon intval on tegelikult see, mida sa siiski vajad.

ma proovivin nii: if(!is_int(intval('muutuja'))){blabla} muffigi.... eks mas katseta veel
Tsiteeritud tekst:
2. Loodan, et oli, on ja jääb ka edaspidi kombeks väljendada enda keeleliselt õigelt, vigadeta ja ropendamata

eks ma püüa
Tsiteeritud tekst:
Tõsi küll, töötab kahjuks ainult IE peal.


no vot

___________________________________________________
.... kas tõesti

16.07.2003 14:23:37 Vajutades siia näed kasutaja patridioot profiili

muidumeez
Ignorantia non est
argumentum


Postitusi: 3864
Tase: Administraator
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Tsiteeritud tekst:
ma proovivin nii: if(!is_int(intval('muutuja'))){blabla} muffigi.... eks mas katseta veel

Proovi nii
PHP kood:

if (intval($muutuja))

Ehk siis kontrolli ikka muutuja sisu, mitte nime

___________________________________________________
An Opinion Is Like An Asshole -- Everybody Has One

16.07.2003 14:27:37 Vajutades siia näed kasutaja muidumeez profiili

patridioot
AhsaaNugis


Postitusi: 63
Tase: 4
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: integeri kontrollimine

oi ma olen niiiii kõva vend........

..... mõhh, aga soovitud tulemust ikka ei saa, mingi fish

___________________________________________________
.... kas tõesti

16.07.2003 14:44:22 Vajutades siia näed kasutaja patridioot profiili

muidumeez
Ignorantia non est
argumentum


Postitusi: 3864
Tase: Administraator
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Tsiteeritud tekst:
oi ma olen niii kõva vend........

Oled siis või ?

___________________________________________________
An Opinion Is Like An Asshole -- Everybody Has One

16.07.2003 14:49:51 Vajutades siia näed kasutaja muidumeez profiili

patridioot
AhsaaNugis


Postitusi: 63
Tase: 4
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: integeri kontrollimine

Tsiteeritud tekst:
Tsiteeritud tekst:
--------------------------------------------------------------------------------
oi ma olen niii kõva vend........
--------------------------------------------------------------------------------


Oled siis või ?


Päris vähe närvi ajab, kui otsid viga sealt kus seda ei ole, või kasutad valet loogikat, või kuidas mõni pisiviga kõik p****(reegel nr 2) võib keerata.

___________________________________________________
.... kas tõesti

16.07.2003 14:54:59 Vajutades siia näed kasutaja patridioot profiili

muidumeez
Ignorantia non est
argumentum


Postitusi: 3864
Tase: Administraator
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Tsiteeritud tekst:


Päris vähe närvi ajab, kui otsid viga sealt kus seda ei ole, või kasutad valet loogikat, või kuidas mõni pisiviga kõik p****(reegel nr 2) võib keerata.

Ikka juhtub.
Anna nüüd teada, kus viga oli ja sulge teema.

___________________________________________________
An Opinion Is Like An Asshole -- Everybody Has One

16.07.2003 14:57:14 Vajutades siia näed kasutaja muidumeez profiili

patridioot
AhsaaNugis


Postitusi: 63
Tase: 4
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: integeri kontrollimine

point on vist selles et intval($muutuja) annab mulle vaatamata sellele, kas ta on integer või mitte TRUE väärtuse, mistõttu ta tingimuseks ei sobi. pöörduks esialgse küsimuse juurde tagasi, selgitamaks milles oli probleem.
aga võibolla olen lihtsalt päikese mõjul lolliks mõelnud.

___________________________________________________
.... kas tõesti

16.07.2003 15:02:24 Vajutades siia näed kasutaja patridioot profiili

muidumeez
Ignorantia non est
argumentum


Postitusi: 3864
Tase: Administraator
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Tsiteeritud tekst:
point on vist selles et intval($muutuja) annab mulle vaatamata sellele, kas ta on integer või mitte TRUE väärtuse, mistõttu ta tingimuseks ei sobi. pöörduks esialgse küsimuse juurde tagasi, selgitamaks milles oli probleem.
aga võibolla olen lihtsalt päikese mõjul lolliks mõelnud.

Aga sa tee siis nii
PHP kood:

if (intval($muutuja) != $muutuja) echo "See ei ole täisarv!";



___________________________________________________
An Opinion Is Like An Asshole -- Everybody Has One

16.07.2003 15:04:38 Vajutades siia näed kasutaja muidumeez profiili

mihkel


Postitusi: 1324
Tase: Moderaator
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Tundub, et siinkohal oleks abiks funktsioon is_numeric().

Manuaalist:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
To test if a variable is a number or a numeric string (such as form input, which is always a string), you must use is_numeric().

bool is_numeric ( mixed var)

Returns TRUE if var is a number or a numeric string, FALSE otherwise.

___________________________________________________
Skype me: mihkelkaru

16.07.2003 15:26:51 Vajutades siia näed kasutaja mihkel profiili

patridioot
AhsaaNugis


Postitusi: 63
Tase: 4
Olek: Offline

Hinnang: Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10Administratiivhinnang: 5/10
RE: integeri kontrollimine

okei, ma ei hakka rääkima kui kõva vend ma olen..... ja millise lolli vea ma leidsin.
igatahes..... võga hästi saab seda probleemi lahendada is_numeric() , intval() ja tõenäoliselt ka is_inti()-ga.....
tänks muiumees ja mihkel siis siin minu lolliga kaasa mõtlemast.... alati pole vead seal kus neid otsida.


___________________________________________________
.... kas tõesti

16.07.2003 15:53:09 Vajutades siia näed kasutaja patridioot profiili

muidumeez
Ignorantia non est
argumentum


Postitusi: 3864
Tase: Administraator
Olek: Offline

Hinnang: Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10Administratiivhinnang: 10/10
RE: integeri kontrollimine

Tsiteeritud tekst:
okei, ma ei hakka rääkima kui kõva vend ma olen..... ja millise lolli vea ma leidsin.
igatahes..... võga hästi saab seda probleemi lahendada is_numeric() , intval() ja tõenäoliselt ka is_inti()-ga.....
tänks muiumees ja mihkel siis siin minu lolliga kaasa mõtlemast.... alati pole vead seal kus neid otsida.


Eks ta ole, ameerikat sa just ei avastanud, aga ...

___________________________________________________
An Opinion Is Like An Asshole -- Everybody Has One

16.07.2003 15:55:20 Vajutades siia näed kasutaja muidumeez profiili
Kokku: 25950 registreerunud kasutajat, 9711 teemat, 54603 postitust.
Täna on esmaspäev, 27. jaanuar 2020. Kell on 23:35.

    Vaata selle lehe printerisõbralikku versiooni

Avaleht   -    Skriptikogu   -    Teated   -    Foorum   -    Reklaam   -    Tagasiside   -    Kasutamise reeglid

© Copyright 2002-2020 PHP Center. Kõik õigused reserveeritud.