資料載入中

胡言亂語

PDO PHP - PDOException - Numeric value out of range 1264 Out of range value for column user_ip at row 1

最近遇到一個問題,一個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
https://innstory.com/story-PDOPHPPDOExceptionNumericvalueoutofrange1264Outofrangevalueforcolumnuser_ipatrow1-2566

上一篇
 htaccess與RewriteEngine一起使用時500內部服務器錯誤

下一篇
在PHP中如何將NAN轉換為0 
  • 1,454
  • 0
  • 0

發表留言

作者簡介

離不開電腦的宅男


推薦閱讀

作者其他相關類別故事

JavaScript 搜尋字串並取代

JavaScript 搜尋字…

Mark Chang 5 年又 171 天 1.3K

在 JavaScript 做搜尋並取代字串可以使用 replace() replace() 適用於...

Linux下查詢已安裝的PHP版本

Linux下查詢已安裝的PH…

Mark Chang 5 年又 147 天 1.3K

紀錄PHP在Linux底下版本查詢方式 執行後輸出以下畫面: 除了用 php 指令外,如果 PHP ...

.htaccess與RewriteEngine一起使用時500內部服務器錯誤

.htaccess與Rewr…

Mark Chang 5 年又 29 天 1.4K

在某些情況下,可能未加載apache中的modrewrite模塊。 這時只需要執行以下指令就可以獲...