PDO PHP - PDOException - Numeric value out of range: 1264 Out of range value for column user_ip at row 1
Temperature: 0 °C
最近遇到一個問題,一個Mysql的錯誤訊息。
我想要紀錄一個IP資訊,我會先用以下方式擷取用戶端使用者IP
sprintf("%u", ip2long($_SERVER['REMOTE_ADDR']))
然後再把資訊存入到Mysql...
在測試端時我測試一切正常,但在客戶端卻出現500的錯誤訊息且錯誤代碼1264。
原因是客戶端使用的IP是IPV6,長度較長,這點我倒是沒考慮到。
所以當我把資料庫欄位從屬性int改為bigint,又或者把int的長度變更就可以解決。
BIGINT
從-2^63 (-9223372036854775808) 到2^63-1 (9223372036854775807) 的整型數據(所有數字)。存儲大小為8 個字節。
INT
從-2^31 (-2,147,483,648)到2^31 – 1 (2,147,483,647)的整型數據(所有數字)。存儲大小為4個字節。
以上紀錄~ #php #PDO #Mysql #錯誤訊息 #IPV6 #bigint #int #500