webForumDet fria alternativet

Kolla om integer samt 8 tecken långt

8 svar · 218 visningar · startad av GrodanBoll

GrodanBollMedlem sedan sep. 2001788 inlägg
#1

Tjabba tjena

Jag får en input från ett formulärfält.
Detta formulärfält ska jag sedan kontrollera så att det är en Integer (heltal) samt att det är exakt 8 tecken långt.

Hur gör jag det?

Jag testade med:

if ((settype($tc, "int") > 99999999) || (settype($tc, "int") < 10000000))
{ fel fel fel }

$tc e då inputten från formuläret.

Det fungerar helt enkelt inte.
Vad har jag gjort för fel??

/Grodan

MatteMedlem sedan aug. 20002 975 inlägg
#2

Prova det här:

if (!preg_match("/^\d{8}$/", $tc)) echo "Fel";
GrodanBollMedlem sedan sep. 2001788 inlägg
#3

Schyrre :bire
Funka kanon.

/G

MatteMedlem sedan aug. 20002 975 inlägg
#4

Kom att tänka på en sak. Den koden accepterar en nolla i början. Får det inte börja med en nolla skriv så här:

if (!preg_match("/^[1-9]{1}\d{7}$/", $tc)) echo "Fel";
GrodanBollMedlem sedan sep. 2001788 inlägg
#5

Tackar igen :)

/G

GrodanBollMedlem sedan sep. 2001788 inlägg
#6

Men du, jag vill att fältet ska kunna vara tomt också, hur blir det då?

!preg_match("/^[1-9]{1}\d{7}$|^$/", $tc)

/G

MatteMedlem sedan aug. 20002 975 inlägg
#7

Antingen inget tecken alls eller åtta siffror. Första tecknet får inte vara nolla. tror det skulle kunna bli något sånt här:

if (!preg_match("/^([1-9]{1}\d{7}){0,1}$/", $tc)) echo "Fel";
GrodanBollMedlem sedan sep. 2001788 inlägg
#8

:bire

/Grodan

NiklassonMedlem sedan nov. 2000857 inlägg
#9

Allvarligt, hur f*n lär man sig det där?? ;)

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)