[請益] 如何讓表單填入的數字是integer?

看板PHP作者 (不務正業的賊)時間16年前 (2010/02/06 09:33), 編輯推噓4(402)
留言6則, 6人參與, 最新討論串1/2 (看更多)
有一表單可以輸入$linamount <input type="text" name="linamount"> 想限制這個欄位只能輸入整數所以加了檢查函式 if(! is_int($linamount) ){ echo "linamount格式錯誤,請填入整數"; exit; } 但它一直判斷輸入的值不是數字 另外作了測試檔,還是試不出來要如何讓輸入的值是int? test.php: <? if( is_int($linamount) ) { echo "OK, linamount=".$linamount; } else { echo "linamount not integer!"; } ?> 連到 test.php?linamount=10 它還是說linamount not integer 要怎麼作才能讓輸入的值通過is_int的檢查呢?還是我該換個檢查方式? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.241.104.166 ※ 編輯: ThiefFan 來自: 210.241.104.166 (02/06 09:34)

02/06 09:35, , 1F
據我所知GET好像都是字串? 10其實是"10"
02/06 09:35, 1F

02/06 09:53, , 2F
那個檢查是不會轉型的 我都intval()直接喂 就不用檢查了
02/06 09:53, 2F

02/06 10:36, , 3F
拿intval去用好了 感謝
02/06 10:36, 3F

02/06 13:36, , 4F
用reg比對
02/06 13:36, 4F

02/08 02:36, , 5F
何不用js regex在前端做
02/08 02:36, 5F

02/08 10:13, , 6F
php檢查數字用is_numeric 應該就可以了不用那麼麻煩 @@
02/08 10:13, 6F
文章代碼(AID): #1BRCRyeQ (PHP)
文章代碼(AID): #1BRCRyeQ (PHP)